1、创建并切换到本地分支card:git checkout -b card
2、将本地分支发布到远程:$ git push origin card:card
3、查看远程分支card已经建立。
4、切换为master分支: git checkout master
5、再删除本地分支 : git branch -D card
6、从远程分支拉取创建本地分支 : $ git checkout -b 新建本地分支(card) 远程分支(origin/card)
4,5,6可以省略,将本地和远程分支关联起来可以直接用一条命令:
git branch --set-upstream-to=origin/card
7、在card分支拉取提交代码推送到远程card分支上 (就正常的提交代码的流程,不过都是在远程分支上的操作,接下来是要将远程分支上提交的东西和远程master融合)
8、切换到master分支: git checkout master
9、将远程分支融合到master分支:git merge card
10、创建完分支,别人要看到你的分支要先更新:git fetch
11、更新后别人就可以切换到你的分支上进行开发了。
12、如果在切换到别人的分支前要保存现有代码,就得保存现场:git stash。当你再次切换回来时就恢复现场:git stash pop@{0}。('@{0}'不写就表示是在最上面保存的现场。如果清除所有保存现场:git stash clear。查看保存列表:git stash list)
13、本地分支重命名 Git branch -m old_local_branch_name new_local_branch_name
14、重命名远程分支:
(1) 重命名远程分支对应的本地分支
git branch -m old_local_branch_name new_local_branch_name
(2) 删除远程分支
git push origin :old_local_branch_name
(3)重新推送新命名的本地分支
git push origin new_local_branch_name
15、删除远程分支
-
删除本地分支
命令行 :$ git branch -d <BranchName>
-
删除远程分支
命令行 :$ git push origin --delete <BranchName>
-
查看删除后分支们
命令行 :$ git branch -a
另一种删除远程分支的方法:
git push origin :old_local_branch_name
16、删除tag
(1): 显示本地tag
git tag
mytag
(2): 删除本地tag
git tag -d mytag
(3): 删除远程tag
git push origin :refs/tags/mytag
15、切换到tag版本为v1.1.7上:
(1) :git checkout tags/v1.1.7
(2):查看tag日志:git log
16:、打tag以及推送:
列出远程所有分支+tag:git
ls
-remote
a、git checkout master
b、git pull
c、git checkout release/v1.0.1
d、git merge mater
e、git tag v1.0.1 (打v1.0.1的tag)
f、 git checkout v1.0.1 (切到v1.0.1tag下)
g、git push origin v1.0.1 (将打的tag推送到远程分支上)
17、合并冲突解决方案:
命令来查看到底是哪些文件发生了合并冲突,这个命令是:git ls-files -s
通过命令:git show :n:filename
查看对应文件的对应版本的内容
解决办法一:保留本地的更改,中止合并->重新合并->重新拉取
$:git merge --abort
$:git reset --merge
$:git pull
- 解决办法二:舍弃本地代码,远端版本覆盖本地版本(慎重)
$:git fetch --all
$:git reset --hard origin/master
$:git fetch