通过git拉取分支的时候要注意:
分支名字不要搞错,比如要拉取的分支是 feature/baifumei_buyer_2018713
那么命令是:git pull feature/baifumei_buyer_2018713 而不是:git pull baifumei_buyer_2018713,这种操作下git会自动给你新建一个名为“baifumei_buyer_2018713”的分支 导致所有的开发都在 baifumei_buyer_2018713 这个分支上,而 feature/baifumei_buyer_2018713 是一个空分支通过git提交代码步骤:
git add .
git commit -m "注释" git pull git push origin 当前我的分支(不是master)查看当前分支:
git branch
查看所有分支:
git branch -a
切换分支:
git checkout 分支名
如果远程新建了一个分支,本地需要更新一下才能看到该分支:
git fetch
回滚到某个版本:
git reset --hard HEAD^ 回退到上个版本
git reset --hard HEAD~3 回退到前3次提交之前,以此类推,回退到n次提交之前 git reset --hard commit_id 退到/进到 指定commit的码放弃本地所有更改:
1. 未使用 git add 缓存代码时。
git checkout -- filepathname (比如: git checkout -- readme.md ,不要忘记中间的 “--” ,不写就成了检出分支了!!)。
git checkout . (放弃所有的文件修改)
此命令用来放弃掉所有还没有加入到缓存区(就是 git add 命令)的修改:内容修改与整个文件删除。但是此命令不会删除掉刚新建的文件。因为刚新建的文件还没已有加入到 git 的管理系统中。所以对于git是未知的。自己手动删除就好了。
2. 已经使用了 git add 缓存了代码。
git reset HEAD filepathname (比如: git reset HEAD readme.md)来放弃指定文件的缓存
git reset HEAD . (放弃所以的缓存可以使用)
此命令用来清除 git add对于文件修改的缓存。相当于撤销 git add 命令所在的工作。在使用本命令后,本地的修改并不会消失,而是回到了如步骤1中所示的状态。继续用步骤1 中的操作,就可以放弃本地的修改。
3. 已经用 git commit 提交了代码。
可以使用 git reset --hard HEAD^ 来回退到上一次commit的状态。此命令可以用来回退到任意版本:git reset --hard commitid
你可以使用 git log 命令来查看git的提交历史。git log 的输出如下,之一这里可以看到第一行就是 commitid:
4. 拉取其他分支,合并到当前分支。
如当前分支是A,要拉取主机origin上的master分支,合并到本地分支A,则命令是:
git pull origin master
如果有冲突,则解决冲突
git add -u
git commit -m "合并分支"
git push
以上过程不需要切换分支。