Git入门
2016-07-14 13:27
183 查看
Git是一个开源的分布式版本控制工具(这里我们忽略Git的安装,请自行查阅百度,Git的功能很强大,适用于多人协作管理代码,具体也请查阅百度,这里我们所提供的是用命令进行简单的Git操作)
1.创建代码仓库(这是Git的一个很大的特点,就是能够在各个节点下创建一个代码仓库来对代码进行管理)
首先用cmd切换到项目目录,然后输入
仓库创建完成后,会在项目的根目录下生成一个隐藏的 .git 文件,这个文件夹就是用来记录本地的所有的Git操作的
2.提交本地代码
首先要对要提交的文件进行添加,这里提供三种方式
①
这是对一个文件进行添加
②
这是对一个文件夹进行添加
③
这是对当前路径下的所有文件及文件夹进行添加
然后,输入如下命令进行提交
这里要说明一点,这个提交是提交到本地的仓库,下面会涉及到同步到远程仓库,一般我们托管到github.com实现,还有一点就是一定要添加之后再提交,不然提交的是空的.
3.忽略文件(将一些项目自动生成的目录忽略掉,避免对文件自动生成造成影响)
首先在项目的根目录下创建一个.gitignore的文件,然后编辑这个文件中的内容,如果有了的话就直接编写然后用步骤2的方法提交一次
4.git的替他基本操作
①
提示有没有可以提交的文件(就是add进来没有commit的文件)
②
查看文件的更改的内容
③
执行这个命令后会对文件所做的一切修改都能撤销了(不过这种撤销方式只适用于那些没有执行过add命令的文件)
如果已经add过了那么使用下面的方法
这样能把add过得文件重置为没有add过的状态
④
查看历史提交信息
5.分支的用法
①
查看当前版本有多少分支
②
创键一个分支
③
切换分支
④
合并分支(将version1.0合并到当前的分支上去)
⑤
删除分支
6.与远程版本库协作
①
1.创建代码仓库(这是Git的一个很大的特点,就是能够在各个节点下创建一个代码仓库来对代码进行管理)
首先用cmd切换到项目目录,然后输入
git init
仓库创建完成后,会在项目的根目录下生成一个隐藏的 .git 文件,这个文件夹就是用来记录本地的所有的Git操作的
2.提交本地代码
首先要对要提交的文件进行添加,这里提供三种方式
①
git add AndroidManifest.xml
这是对一个文件进行添加
②
git src
这是对一个文件夹进行添加
③
git add .
这是对当前路径下的所有文件及文件夹进行添加
然后,输入如下命令进行提交
git commit -m "这里对提交内容的描述或是标记"
这里要说明一点,这个提交是提交到本地的仓库,下面会涉及到同步到远程仓库,一般我们托管到github.com实现,还有一点就是一定要添加之后再提交,不然提交的是空的.
3.忽略文件(将一些项目自动生成的目录忽略掉,避免对文件自动生成造成影响)
首先在项目的根目录下创建一个.gitignore的文件,然后编辑这个文件中的内容,如果有了的话就直接编写然后用步骤2的方法提交一次
4.git的替他基本操作
①
git status
提示有没有可以提交的文件(就是add进来没有commit的文件)
②
git diff (这里可以添加具体要查看的文件)
查看文件的更改的内容
③
git checkout (可以添加具体要撤销的文件)
执行这个命令后会对文件所做的一切修改都能撤销了(不过这种撤销方式只适用于那些没有执行过add命令的文件)
如果已经add过了那么使用下面的方法
git reset HEAD (具体的文件)
这样能把add过得文件重置为没有add过的状态
④
git log (id -1 -p)
查看历史提交信息
5.分支的用法
①
git branch -a
查看当前版本有多少分支
②
git branch version1.0
创键一个分支
③
git checkout version1.0
切换分支
④
git merge version1.0
合并分支(将version1.0合并到当前的分支上去)
⑤
git branch -D version1.0
删除分支
6.与远程版本库协作
①
git clone http://github.com/example/test.git[/code]
将远程代码库下载到本地
②git push origin master
origin表示地址, master表示哪一个分支,将项目同步到远程仓库
③git fetch origin master
将代码上的修改同步到本地
④git pull origin master
等于fetch+merge
相关文章推荐
- iterm2 快捷键
- Description Resource Path Location Type Java compiler level does not match the version of the instal
- C++ 11 中的右值引用
- ImageLoader源码分析
- 取消web浏览器 打印页眉和页脚
- 酒店预订的 响应真的很繁杂
- ZFPlayer 源码解读
- 数据库的创建,数据库的操作(增删改查)
- Linux 中 mysql 的主从复制配置
- Django接受前端数据的几种方法
- Unreal Cook Book:数据驱动
- 抓住六个点,谈唯品会的峰值系统应对实践
- 更新媒体库
- HDU 3371 Prim或kruskal实现
- (java)StringUtil类的一些用法,特别实用
- 本地通知
- 简单使用Reveal:分析IOS UI界面
- XML之------DTD(文档类型定义)
- c# dictionary 给某键值赋值之前是否一定要add此键值
- 格式化时间的 2016.07.14 13:22:50