git branch 查看本地分支
git branch -a 查看本地和远程分支
git branch songs 创建分支songs
git checkout songs 切换分支到songs
git checkout -b songs 创建并切换分支到songs
git merge songs 将songs分支和master分支合并,先要将分支切换到主分支
git branch -d songs 删除分支songs
当前分支的代码和主分支的代码进行同步:
1、首先将当前代码git status . 修改的部分checkout 或者提交
2、然后git status后显示没有修改就用git rebase <主分支>,如果显示有冲突就用git status -s ./ ,UU zediel/config/si7067sa/ProjectConfig.mk(像这种前面有UU的就是说明有冲突)
3、vim zediel/config/si7067sa/ProjectConfig.mk,将冲突部分删掉
4、git add zediel/config/si7067sa/ProjectConfig.mk提交然后在git rebase –continue有冲突的话重复之前的操作直到git status -s ./没有显示冲突就说明同步完毕。
git push 完整命令:git push origin localbranch:remotebranch,在本地分支和远程分支没有关联的情况下,本地分支和远程分支必须有一个、
1.当忽略掉远程分支名字时,只有本地分支名字,意味着远程分支名字等同于本地分支名字,如:git push origin localbranch
2.当忽略掉本地分支名字时,只有远程分支名字,意味着删除远程分支,如:git push origin :remotebranch
3.当都忽略掉远程分支和本地分支时,如:git push ,则远程分支和本地分支关联了时没有问题,若没有关联则会出错,需要先设置关联,命令如下:git push –set-upstream-to 当前分只 远程分支,设置当前分支和远程分支关联
gitcheckoutoldcc git cherry-pick 38361a68 # 这个 38361a68 号码,位于:
$ git log
commit 38361a68138140827b31b72f8bbfd88b3705d77a
Author: Siwei Shen siwei.shen@focusbeijing.com
Date: Sat Dec 10 00:09:44 2011 +0800
如果顺利,就会正常提交。结果:
如果在cherry-pick 的过程中出现了冲突
Automatic cherry-pick failed. After resolving the conflicts,
mark the corrected paths with ‘git add ’ or ‘git rm ’
and commit the result with:
git commit -c 15a2b6c61927e5aed6718de89ad9dafba939a90b
就跟普通的冲突一样,手工解决:
2.1 $ git status # 看哪些文件出现冲突
both modified: app/models/user.rb
2.2 vim app/models/user.rb # 手动解决它。
2.3 git add app/models/user.rb
2.4 git commit -c <新的commit号码>