git 快捷操作

要提交修改过的文件,首先使用 git add <file> ,然后再执行 git comit <file> -m "??mark",但是这两步也可以一步完成,如下所示 -

$ git commit -a -m "描述feat: update: fixed:"$ git commit -a -m "描述feat: update: fixed:"

远程存储库中的更改合并到当前分支中$ git pull <远程主机名> <远程分支名>:<本地分支名>
Shell

比如,要取回origin主机的next分支,与本地的master分支合并,需要写成下面这样 -

$ git pull origin next:master
Shell

如果远程分支(next)要与当前分支合并,则冒号后面的部分可以省略。上面命令可以简写为:

$ git pull origin next
Shell

上面命令表示,取回origin/next分支,再与当前分支合并。实质上,这等同于先做git fetch,再执行git merge

$ git fetch origin
$ git merge origin/next

git 建立或者更改追踪关系(tracking)

git status

>Your branch is based on 'origin/home_branch', but the upstream is gone.

这时候提示基于远程分支origin/home_branch已经不见了,失去了关联依然还是可以提交和更新的,但是在效率上会差很多

你不用知道git是怎么把远程和本地分支关联起来的,输入如下两条命令(注意:这里是以本地的source为例):

git config --get branch.source.remote
>origin
  • 1
  • 2

这条说明返回的是本地分支连接的远程名称为origin 一般来说默认远程都是这个名字

git config --get branch.source.merge
>refs/heads/master
  • 1
  • 2

这条说明本地的这条source分支是和远程的master分支关联的(注意:即使远程的master分支已经被删除了,这里还是会保留master的关联,所以这才是这个问题的关键所在) 
联系这两条内容,可以知道远程名为origin,并且本地分支source所关联的远程分支为master 
好的,我们接着输入:

git branch -a
  • 1

这里能把本地的分支和远程的分支全部打印出来,其中对应的origin(前面提到的远程名)的分支就是远程的分支,如果远程的分支上没有我们本地关联的分支,就会出现本文所要解决的问题。

如何解决呢?


这里是解决方法,–set-upstream-to命令来更改本地分支关联的远程分支,这个命令会把branch.source.remote和branch.source.merge都更改

输入(这里把本地分支的关联更改为远程的source分支,确保远程的source事先已经存在):

$ git branch --set-upstream-to=origin/source
  • 1

这样就更改成功了 
输入:

git status
>Your branch is up-to-date with 'origin/source'.
  • 1
  • 2

本地分支已经关联上远程的source了。

参考https://blog.csdn.net/limengke123/article/details/77850134
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值