git 从本地仓库恢复服务器
git server recovery from local repo
我的 git 服务器和所有存储库意外损坏,我正在尝试将一切恢复正常。但是无论我怎么尝试,一些远程分支就是不恢复。
我的情况描述如下:
git branch -a
* master
branch_1
branch_2
branch_3
remotes/origin/HEAD -> origin/master
remotes/origin/branch_1
remotes/origin/branch_2
remotes/origin/branch_3
remotes/origin/branch_4
remotes/origin/branch_5
我的本地仓库有一些从服务器克隆后创建的分支。其余的没有被触及。但是记录都在本地仓库中。 (可切换)
而且我试图将所有内容推送到新服务器。但是 "remotes/*" 下的所有记录都无法推送到新服务器。
知道如何将所有内容恢复到新服务器吗?
remotes 下的所有记录不应该被推送:它们是远程跟踪分支,跟踪你之前拉取的内容。
只推送本地分支就足够了。
对于没有本地分支的远程跟踪分支,您可以为每个远程分支创建所述本地分支,并同时推送它们。
参见“Track all remote git branches as local branches”。
或者 (simpler):
for remote in `git branch -r | grep -v /HEAD`; do git checkout --track $remote ; done
我的 git 服务器和所有存储库意外损坏,我正在尝试将一切恢复正常。但是无论我怎么尝试,一些远程分支就是不恢复。
我的情况描述如下:
git branch -a
* master
branch_1
branch_2
branch_3
remotes/origin/HEAD -> origin/master
remotes/origin/branch_1
remotes/origin/branch_2
remotes/origin/branch_3
remotes/origin/branch_4
remotes/origin/branch_5
我的本地仓库有一些从服务器克隆后创建的分支。其余的没有被触及。但是记录都在本地仓库中。 (可切换)
而且我试图将所有内容推送到新服务器。但是 "remotes/*" 下的所有记录都无法推送到新服务器。
知道如何将所有内容恢复到新服务器吗?
remotes 下的所有记录不应该被推送:它们是远程跟踪分支,跟踪你之前拉取的内容。
只推送本地分支就足够了。
对于没有本地分支的远程跟踪分支,您可以为每个远程分支创建所述本地分支,并同时推送它们。
参见“Track all remote git branches as local branches”。
或者 (simpler):
for remote in `git branch -r | grep -v /HEAD`; do git checkout --track $remote ; done