问:如何将本地项目关联上git?
答:
第一步:在github上创建一个空项目,一定要任何文件都没有的空项目。
第二步:用git bash cd到项目中,输入命令 git remote add origin git@github.com:coding-rk/test.git
OK,到这一步本地的项目就跟github上的项目关联起来了。
这里要注意的是,github上创建的项目必须是空项目不然关联会报错的。
如果github上的项目不是空项目报错了,但是本地跟远程的合并不会有什么问题,这时候可以用强制合并:git pull origin master --allow-unrelated-histories之后就可以:git push origin master
问:如何拉取指定分支代码?
答:git clone -b develop XXX
释义:develop是分支名。
问:如何查看当前所在分支?
答:git branch
问:如何查看全部分支?
答:git branch -a
问:如何切换分支?
答:git checkout master
问:如何从当前分支拉一个dev分支?
答:git checkout -b dev
说明:从当前分支创建并切换到dev分支
问:如何把新建的dev分支push到远端?
答:git push origin dev
说明:建完分支push到远端之后拉取一下分支git pull
问题:可能会碰到git branch --set-upstream-to=origin/<branch> dev这个错误提示,意思是当前的分支并没有和本地分支关联,就按说明操作就可以解决问题:git branch --set-upstream-to=origin/dev
问:如何把dev分支合并到master分支上?
答:
第一步:在dev分支上确保dev分支代码是最新的
第二步:git checkout master切到master分支上,git pull确保master代码在本地最新
第三步:在master分支上执行git merge dev,将dev分支合并到master分支上
第四步:git push将本地代码提交到线上
第五步:到此合并结束。
问:本地新建分支并切换到指定分支
答:git checkout -b dev origin/release/dev
备注:
- git checkout -b 本地分支名 origin/远程分支名
- 此方法适用于:本地没有远程某分支,要把远程某分支拉到本地来的场景。比如我本地没有某同事的分支,但是我想把某同事的分支拉到本地,方便代码合并就可以用这个方法。
问:在自己的分支上开发完毕之后要把合并到develop分支,但是本地有代码未提交也不需要提交,这时候该怎么办?
答:可以先在自己的分支上执行git stash也就是将这部分代码放入储藏区,之后就可以git checkout develop切换到develop然后git merge xx将自己的分支合并到develop分支了。之后切回自己的分支git stash pop就可以将储藏区的代码拿出来
问:在当前分支如果提交了几个版本到暂存区,但是后来发现这几个修改都不需要了怎么回退到修改之前?
答:有两种方法,一种是回退到修改之前,修改还在,第二种是修改不在了。先git log查看版本,找到要回退到的版本号取前6位就行,然后执行git reset --soft e00e44或者git reset --hard e00e44 soft是保留修改,hard是不保留修改
问:如果有紧急需求需要在develop分支上直接修改,完了又怕改完之后提交之前的pull会对当前的修改产生冲突怎么办?
答:git pull --rebase --autostash在develop分支,先把当前分支的本地分支修改放到储藏区,然后拉最新代码,然后变成一条直线,再把储藏区修改放入修改区,然后再去提交自己的代码