我已经完全满足了我当地的分支机构,并希望重新开始.服务器上的版本是正确的.
我不想重新开始,我想用我当地的历史来解决我的巨大问题.(如果必须,我可以.)
git fetch branchname,而且git pull branchname不工作.我收到的消息是" 最新的 "但是,我的本地版本与服务器的版本不匹配.
git pull origin/branchname给我一个" 未找到 "的错误.
kni*_*ttl 241
首先,在当前位置创建一个新分支(如果您需要旧的"搞砸"历史记录):
git branch fubar-pin
Run Code Online (Sandbox Code Playgroud)
更新远程分支列表并同步新提交:
git fetch --all
Run Code Online (Sandbox Code Playgroud)
然后,将分支重置为origin/branch指向的点:
git reset --hard origin/branch
Run Code Online (Sandbox Code Playgroud)
小心,这将删除工作树中的任何更改!
Cas*_*all 58
当我弄乱我的本地分支时我做的是我只是重命名我的破坏的分支,并再次检查/分支上游分支:
git branch -m branch branch-old
git fetch remote
git checkout -b branch remote/branch
Run Code Online (Sandbox Code Playgroud)
然后,如果您确定不需要旧分支中的任何内容,请将其删除:
git branch -D branch-old
Run Code Online (Sandbox Code Playgroud)
但通常我会把旧分支留在本地,以防我在那里有东西.
您的本地分支可能对您要丢弃的进行了修改。为此,您需要使用git reset将分支头重置为与上游存储库分支分开的最后一个位置。使用git branch -v发现上游分支的SHA1 ID,并使用重置您的分支它它git reset SHA1ID。然后你应该能够做一个git checkout丢弃它在你的目录中留下的更改。
注意:始终在备份存储库上执行此操作。这样你就可以保证你是自己它工作正常。或者,如果没有,您有一个备份可以恢复。
| 归档时间: |
|
| 查看次数: |
114778 次 |
| 最近记录: |