git笔记五:常用指令

Git使用笔记


1. 常用命令

下载一个项目和它的整个代码历史 
git clone [**.git]

这里写图片描述

比较当前文件和暂存区文件差异 
git diff

这里写图片描述

将工作文件修改提交到本地暂存区 
git add -A 
git add 
这里写图片描述

显示有变更的文件 
git status

这里写图片描述

提交暂存区到仓库区 
git commit -a -m “[comments]”

这里写图片描述

查看该文件每次提交记录 
git log

这里写图片描述

本地代码更新(取回远程仓库的变化,并与本地分支合并) 
git pull origin [branchName]

这里写图片描述

本地代码提交(上传本地指定分支到远程仓库) 
git push origin [branchName]

这里写图片描述

新建分支 
git checkout -b [newBranchName] 
git checkout -b [newBranchName] master 在master分支上创建分支并切换到newBranchName分支上

这里写图片描述

切换指定分支 
git checkout [branchName]

这里写图片描述

查看所有分支 
git branch -a 
git branch 没有参数,则显示本地库中所有本地分支的名称,当前分支前面会有分号

这里写图片描述

合并分支 
git merge origin [branchName]

git merge –no-ff [branchName] 
–no-ff指的是强行关闭fast-forward方式。 
fast-forward方式就是当条件允许的时候,git直接把HEAD指针指向合并分支的头,完成合并。属于“快进方式”,不过这种情况如果删除分支,则会丢失分支信息。因为在这个过程中没有创建commit

git merge –squash 是用来把一些不必要commit进行压缩,比如说,你的feature在开发的时候写的commit很乱,那么我们合并的时候不希望把这些历史commit带过来,于是使用–squash进行合并,此时文件已经同合并后一样了,但不移动HEAD,不提交。需要进行一次额外的commit来“总结”一下,然后完成最终的合并。 
–squash:使用squash方式合并,把多次分支commit历史压缩为一次。

2. git中三种状态

git中三种状态分别为:modified, new file, untracked 
下面详细演示下三种状态 
初始状态 
这里写图片描述

编辑文件file1.txt

这里写图片描述

添加文件file3.txt

这里写图片描述

使用git add 将文件添加到待提交清单

这里写图片描述

3. 合并分支冲突

比如master分支在进行合并子分支branchName时,如果采用git merge –no-ff [branchName]的方式,会显示出冲突的地方,比如: 
这里写图片描述

类似上面这种情况,说明发生了冲突,遇到这种情况不用担心。这时候需要手动删除。 
首选打开编辑冲突的文件,类似以下这种情形: 
这里写图片描述

介于<<<<<<<(包括======以及>>>>>>都是七个) HEAD和=======的内容是master分支原有的内容:“master file1.txt”。 
介于=======和>>>>>>> branchName的内容是branchName原有的内容: “file1 has changed”。 
这样将子分支branchName的内容整合到master的过程中,上述标记的2块内容会发送冲突,解决办法就是我们手动编辑去掉冲突,即先编辑冲突,然后使用gitt commit提交。 
这里写图片描述

对于git来说,编辑冲突和平时的修改代码没什么差异。修改完成后,都是要把修改添加到缓存,然后支持commit.


作者:http://blog.csdn.net/u013256816/article/details/54633847

Measure
Measure


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值