我有一个跟踪几个远程分支的git存储库:
$ git branch -a
* master
remotes/git-svn
remotes/origin/master
remotes/trunk
Run Code Online (Sandbox Code Playgroud)
当我尝试设置默认值时,我收到以下错误:
$ git branch --set-upstream-to=origin/master master
warning: refname 'origin/master' is ambiguous.
fatal: Ambiguous object name: 'origin/master'.
Run Code Online (Sandbox Code Playgroud)
我想删除一些远程主分支,但主引用仍然存在.如何删除它们才能将默认上游分支设置为origin/master?
$ git show-ref master
cba97a58c99743c355b569bbf35636c8823c2d96 refs/heads/master
6726b4985107e2ddc7539f95e1a6aba536d35bc6 refs/origin/master
d83f025cd3800ed7acd76b2e52ae296e33f1cd07 refs/original/refs/heads/master
cba97a58c99743c355b569bbf35636c8823c2d96 refs/remotes/origin/master
Run Code Online (Sandbox Code Playgroud) 几个星期前,我在GitHub上分了一个公共项目.今天,我想尝试一些东西,但我想确保我使用的副本是最新的.
我可以先更新我的前叉吗?
如果在我开始更改之后叉子发生了变化,会发生什么.我可以再次更新我的分叉,同时将我的更改留在那里(即合并,如果需要的话?)
鉴于Git非常友好,我猜测可以轻松检查这种情况:
- 我有一个目录foo /其中的某个目录.- 某些其他计算机上的某人对foo的内容(包括嵌套子目录)进行了更改,并将更改推送到了repo.
我的猜测是我必须进行提取并检查我的目录的SHA-1和远程目录的SHA-1之间是否存在某些差异,但我不知道如何执行此操作.