相关疑难解决方法(0)

如何修复GIT错误:对象文件是空的?

当我尝试提交更改时,我收到此错误:

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)

git

408
推荐指数
9
解决办法
16万
查看次数

@ {u}在Git中的含义是什么?

在第69页的"Git:每个人的版本控制.初学者指南"一书中,有一个建议:"作为替代git pull,我们也可以使用git fetch后跟git merge @{u}".

@{u}这里的意思是什么?

在Google中搜索git merge @{u}提供了此页面的链接http://mislav.uniqpath.com/2013/02/merge-vs-rebase/其中@{u}也可以找到.

git

33
推荐指数
1
解决办法
3330
查看次数

良好的git流程,可在家中和办公室交替工作

我一半时间在家里工作,一半时间在办公室工作。每个任务必须完成一个专门的,独立的分支,并在同行评审后合并。

我们的项目由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)

我的错误在哪里,如何在不冲突的情况下将两个本地存储库中的代码推入/拉出服务器?

git

6
推荐指数
2
解决办法
129
查看次数

弄乱了本地git存储库 - 如何"恢复恢复"以再次匹配最后一次远程提交?

我在bitbucket上有一个远程git存储库(它是私有的,所以我不能在这里共享一个链接,我害怕)......我有几个分支,其中两个是:

  • cert_creation

昨天我在分支*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次,但我找不到正确的关键词:[]而且我已经搞砸了一些东西我真的很想确保做正确的事情.

非常感谢您的回答,我非常感谢您的帮助!

git bitbucket

2
推荐指数
1
解决办法
3816
查看次数

标签 统计

git ×4

bitbucket ×1