我有一个跟踪几个远程分支的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) 我查看了所有其他模棱两可的refname问题,但它们似乎都没有帮助.为什么我收到这个警告?
$ git checkout master
warning: refname 'master' is ambiguous.
$ git show-ref master
eef61c00da690f093063ac5a728e22fd21648104 refs/heads/master
$ git branch -a
checkers
exercises
* master
$ git remote -v
$
Run Code Online (Sandbox Code Playgroud) 如果两个或多个用户同时将他们的本地 repo 状态同时推送到同一个远程,git:
在完成一个用户的整批提交之前锁定远程提交/分支/存储库以进行写入?
或者它是否在从他的 N 个提交批次中写入单个用户的单个提交后释放它持有的提交/回购/分支上的锁?
第一个是有道理的,但我想我还是会问。
在我们的项目中,主分支完全崩溃了。它认为它领先一些承诺,如果我们尝试合并开发,则表明存在大量冲突。它已经被打破很长时间了,所以开发中发生了很多事情(解决了太多冲突)。
我只想用dev覆盖master中的所有内容(因此master基本上等于dev)。我该怎么做呢?
我尝试删除本地master中的所有内容,然后运行以下命令:
git checkout master
git reset --hard develop
Run Code Online (Sandbox Code Playgroud)
似乎给我所有正确的文件,但是当我尝试推送主文件时,出现此错误:
Updates were rejected because the tip of your current branch is behind
Run Code Online (Sandbox Code Playgroud)