当我尝试提交更改时,我收到此错误:
error: object file .git/objects/31/65329bb680e30595f242b7c4d8406ca63eeab0 is empty
fatal: loose object 3165329bb680e30595f242b7c4d8406ca63eeab0 (stored in .git/objects/31/65329bb680e30595f242b7c4d8406ca63eeab0) is corrupt
Run Code Online (Sandbox Code Playgroud)
不知道如何解决这个错误?
编辑
我试过git fsck我有:
error: object file .git/objects/03/dfd60a4809a3ba7023cbf098eb322d08630b71 is empty
fatal: loose object 03dfd60a4809a3ba7023cbf098eb322d08630b71 (stored in .git/objects/03/dfd60a4809a3ba7023cbf098eb322d08630b71) is corrupt
Run Code Online (Sandbox Code Playgroud) 在第69页的"Git:每个人的版本控制.初学者指南"一书中,有一个建议:"作为替代git pull,我们也可以使用git fetch后跟git merge @{u}".
@{u}这里的意思是什么?
在Google中搜索git merge @{u}提供了此页面的链接http://mislav.uniqpath.com/2013/02/merge-vs-rebase/其中@{u}也可以找到.
我一半时间在家里工作,一半时间在办公室工作。每个任务必须完成一个专门的,独立的分支,并在同行评审后合并。
我们的项目由Bitbucket支持,我们也使用Jira和Jenkins。
我仅使用一个远程存储库和两个本地存储库。
我有一个反复出现的问题:我(@home)和我(@agency)之间发生了一些冲突...
这是我的过程:
星期一,在办公室的一个由master衍生的分支“ JamesBond007”中:
git add --all
git commit [--amend]
git push [-f] origin remote/JamesBond007
Run Code Online (Sandbox Code Playgroud)
周二在家:
git checkout master
git pull
git checkout JamesBond007
git pull --rebase origin master
Run Code Online (Sandbox Code Playgroud)
周三在办公室:
git checkout master
git pull
git checkout JamesBond007
git pull --rebase origin master **<-- conflict: git mergetool command needed!!!**
Run Code Online (Sandbox Code Playgroud)
我的解决方法:
rm -fr repo
git clone ssh:repos-url
Run Code Online (Sandbox Code Playgroud)
我的错误在哪里,如何在不冲突的情况下将两个本地存储库中的代码推入/拉出服务器?
我在bitbucket上有一个远程git存储库(它是私有的,所以我不能在这里共享一个链接,我害怕)......我有几个分支,其中两个是:
昨天我在分支*cert_creation*,我做了一个
git add --all
git commit -m "changes blabla"
git push origin cert_creation
Run Code Online (Sandbox Code Playgroud)
......一切都很好.当我查看Bitbucket网站上的最新提交时,所有更改似乎都得到了保存.
但是,当我今天在我的本地计算机上打开一些文件时,我想,它们不是最新的.
所以我想将本地计算机上的所有更改恢复为最新的远程提交(我知道这是正确的).我用谷歌搜索将本地git存储库恢复到最新的远程提交.我使用了这些命令:
git reset HEAD --hard
git clean -fd
git fetch origin
git reset --hard origin/master
Run Code Online (Sandbox Code Playgroud)
(以及其他一些不起作用的人).现在的问题是,我已经搞砸了一切.现在我在我的本地机器上有一个非常古老的git提交(这是我最后一次将cert_creation合并到master).
现在的问题是如何"恢复恢复",即将我的本地git存储库更新为最后一次远程提交.可能这已经在互联网上的某个地方被问了100次,但我找不到正确的关键词:[]而且我已经搞砸了一些东西我真的很想确保做正确的事情.
非常感谢您的回答,我非常感谢您的帮助!