git花样百出的疑难点——记住这些疑难点可以帮你更加深刻的理解git相关命令

1、关于 git pull 和 git pull origin develop 的区别
(1)两者的区别

git pull = git fetch + git merge
git pull origin develop
动作是去获取远程仓库中develop分支上的commits,然后把origin/develop merge到你目前check out下来的分支中
git pull 就是省去了指定分支,默认就是去你之前check out 的分支上去操作,比如,如果你本地的check out的分支 track的就是origin/develop,那么git pull就等于git pull origin develop

(2)深入理解

首先不建议使用 git pull 拉取代码,建议使用 git fetch + git merge来拉取代码。git pull默认是从和当前工作区的分支一样的远程分支拉取代码,例如: 当前工作区分支:dev,那么 git pull 等于 git pull origin dev. 当然有特殊情况,本地是dev分支,想从mater分支拉取代码,那么就得使用: git pull origin master,不过这种情况很少,如果有这种情况建议使用:get merge master代码分支合并。
总的来说: git pull 默认缺省值就是当前工作区的分支

(3)注意事项
注:本地新建分支, push到远程服务器上之后,使用git pull或者git pull 拉取或提交数据时会报错,必须使用命令:git pull origin dev(指定远程分支);如果想直接使用git pull或git push拉去提交数据就必须创建本地分支与远程分支的关联。本地分支如何与远程分支建立关联请参考我前面发表的博文https://blog.csdn.net/CNCDXX_88/article/details/128165838
2、git分支提交的问题:git push origin dev:dev 为什么dev后还要加一个冒号和dev呢?
(1)先说结论

git push <远程主机名> <本地分支名>:<远程分支名> 前面的是本地分支名,后面的是远程分支名,同名可以省略冒号部分

(2)再看原因

例如:对于git push origin dev:dev指令
冒号前的dev代表本地仓库的dev分支,
冒号后的dev代表远程仓库origin的dev分支;
这句话的意思就是将本地的dev分支推送到远程仓库的dev分支。 因为这里本地仓库和远程仓库的分支名一样,可以简写为git push origin dev,远程分支可以省略,默认推送到远程仓库的同名分支

3、git修改指令什么时候用?
背景:开发前期时使用的分支名不符合命名规范,后期如果修改了远端的分支名,然后我仅仅修改了本地的分支名,就理所当然地认为可以push到对应的远端分支。
解决方案:当远端分支更换或重命名之后,修改本地分支名并不是必要的,最重要的是: 修改本地分支和远端分支的关联关系

可以通过下方代码将本地分支关联到一个远端分支

//可以先通过下面命令刷新远端分支列表
git remote update origin --prune
//更换关联的远端分支
git branch --set-upstream-to=origin/远端分支名 本地分支名

4、

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值