分支管理
- 查看当前分支 git branch
- 创建分支 git branch //git branch index_one
- 切换分支 git checkout <分支名称,主分支是master>//git checkout index_one //git checkout master
- 创建加切换分支 git checkout -b
- 合并某分支到当前分支 git merge//先切换到当前分支(一般是主分支master),再输入命令git merge index_one
- 删除分支 git branch -d
- 删除码云上的分支 git push --delete origin
标签管理
- 查看所有标签 git tag
- 打标签 git tag <tag_name>//一般合并到主分支再打标签,git tag v2.7.0.0
- 查看commit历史及commit id git log - -pretty=oneline - -abbrev-commit
- 给特定的commit id打tag git tag <tag_name>
- 打tag,并且简要说明tag内容,类似于注释 git tag -a <tag_name> -m"内容"
- 推送特定tag git push origin <tag_name>
- 一次推送全部tag git push origin --tags
- 删除标签 git tag -d <tag_name>//删除本地标签,git tag -d v2.7.0.0
- 删除已推送到远程的标签 git push origin :refs/tags/<tag_name>”//先删除本地的
Your branch is ahead of ‘origin/master’ by 1 commit
####先切换到有问题分支然后git reset --hard origin/master重置分支,最后合并子分支到这个主分支
git status
On branch master
Your branch is ahead of ‘origin/master’ by 12 commits.
(use “git push” to publish your local commits)
nothing to commit, working tree clean
//上面的意思就是你有12个commit,需要push到远程master上
最后执行下面提交命令(先用这个)
git push origin master
Git中.gitignore文件不起作用的解决以及Git中的忽略规则介绍
原因:原因是因为在Studio的git忽略目录中,新建的文件在git中会有缓存,如果某些文件已经被纳入了版本管理中,就算是在.gitignore中已经声明了忽略路径也是不起作用的,这时候我们就应该先把本地缓存删除,然后再进行git的push,这样就不会出现忽略的文件了。git清除本地缓存命令如下:
git rm -r --cached .
git add .
git commit -m 'update .gitignore'
git 本地分支与远程分支关联的一种方法
github上已经有master分支 和dev分支
在本地
git checkout -b dev 新建并切换到本地dev分支
git pull origin dev 本地分支与远程分支相关联
在本地新建分支并推送到远程
git checkout -b test
git push origin test 这样远程仓库中也就创建了一个test分支
git常用命令
- 克隆代码
git clone https://github.com/master-dev.git
这个git路径是无效的,示例而已
- 查看所有分支
git branch --all
默认只有master分支,所以会看到如下两个分支
master[本地主分支] origin/master[远程主分支]
新克隆下来的代码默认master和origin/master是关联的,也就是他们的代码保持同步
- 创建本地新的dev分支
git branch dev # 创建本地分支
git branch # 查看分支
这是会看到master和dev,而且master上会有一个星号
这个时候dev是一个本地分支,远程仓库不知道它的存在
本地分支可以不同步到远程仓库,我们可以在dev开发,然后merge到master,使用master同步代码,当然也可以同步
-
发布dev分支
发布dev分支指的是同步dev分支的代码到远程服务器
git push origin dev:dev # 这样远程仓库也有一个dev分支了
-
在dev分支开发代码
git checkout dev # 切换到dev分支进行开发
开发代码之后,我们有两个选择
第一个:如果功能开发完成了,可以合并主分支
git checkout master # 切换到主分支
git merge dev # 把dev分支的更改和master合并
git push # 提交主分支代码远程
git checkout dev # 切换到dev远程分支
git push # 提交dev分支到远程
第二个:如果功能没有完成,可以直接推送
git push # 提交到dev远程分支
注意:在分支切换之前最好先commit全部的改变,除非你真的知道自己在做什么
- 删除分支
git push origin :dev # 删除远程dev分支,危险命令哦
下面两条是删除本地分支
git checkout master # 切换到master分支
git branch -d dev # 删除本地dev分支
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)