创建新的git init后重新同步到远程仓库

a64a0gku  于 2023-05-27  发布在  Git
关注(0)|答案(1)|浏览(171)

我有一个本地仓库,并且一直与我的远程github保持同步(100%同步)。
案例#1:我删除了.git,所以现在本地存储库不再是git文件夹(与远程存储库断开连接),那么我如何重新与远程存储库同步?假设我不想做'git clone',因为我知道我的local已经是一个完美的克隆。我不想浪费时间重新克隆和重新下载整个文件夹这是非常大的。如果执行新的'git init',那么将'remote origin'设置为我现有的远程存储库。是否可以重新同步再次与最小的上传/下载过程?如何告诉远程服务器我的本地副本已经是最新的?在这种情况下,应该不需要推/拉。
案例2:如果在'断开连接'期间,我添加或修改了一些文件,那么执行git init。git是否有可能检查远程和本地,只找到不同之处。所以git只会标记要添加/提交/推送的新文件或修改过的文件。
在git中可能吗?许多同步应用程序,如碳复制和synctoy,他们可以比较和识别,如果文件是完全相同的,所以这些文件将被忽略,从同步列表中,即使在第一次同步(如果我手动复制它之前)

au9on6nz

au9on6nz1#

我想第一点应该是:

git remote add origin <remote-repo-url> # add remote as origin
git fetch                               # 

# set branch and synch everything
git branch --set-upstream-to=origin/<branch-name> <branch-name>
git pull

如果local和分支有相同的提交历史,那么你可以跳过分支和git pull。
第二种情况是正常的git add,commit和push -在我看来:

git status # get overview
git add .  # add the newly added files
git commit -m "Commit message" # commit them
git push   # push to remote

相关问题