从Git裸仓库拉取没有已推送的提交

3
我有一个裸的git仓库,用于备份。每次在本地副本上进行提交后,我都会将其推送到裸仓库。Git会无错误地推送对象。今天,我尝试通过克隆裸仓库到普通仓库来双重检查备份是否正常。当我进行克隆时,文件与初始裸克隆时完全相同,没有任何新推送的对象。
我已经查看了裸仓库中的对象目录,并且在时间段内添加或更新了新文件。我尝试从裸仓库拉取到新克隆中,但它显示一切都是最新的。我还在裸仓库上做了git日志,只显示了我进行原始克隆时的提交。
我做错了什么?在推送时是否应该使用其他标志?谢谢。
更新:我想我可能已经找到问题所在 - 看起来我在进行原始裸克隆时处于master之外的分支上。我只是在检出master时进行了另一个裸克隆,现在似乎可以工作了。
2个回答

1

尝试使用 git add - git commit - git pull - git push


1
(正如你所学)这是一个分支问题。默认情况下,git clone会检出主分支。因此,如果您在另一个分支上本地提交并将其推送到远程的相同分支,则远程的主分支上将没有任何内容。选项如下:
git clone -b <your branch> <repository>

然后您将确认<您的分支>是否包含您的所有工作。或者,在您的本地存储库中,

git checkout master
git merge <your branch>
git push <remote> master

这将是一个简单的合并(因为主分支为空),并将把所有内容推送到远程主分支,正如您所期望的那样。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接