相关疑难解决方法(0)

如何在git历史中查找/识别大型提交?

我有一个300 MB的git repo.我目前检出的文件重2 MB,git repo重298 MB.这基本上是一个仅限代码的回购,重量不应超过几MB.

最有可能的是,有人在某个时候偶然犯了一些重文件(视频,巨大的图像等),然后将它们删除......但不是从git中删除,所以我们有无用大文件的历史.如何在git历史记录中追踪大文件?有400多个提交,所以一个接一个将是耗时的.

注意:我的问题不是关于如何删除文件,而是如何在第一时间找到它.

git

313
推荐指数
10
解决办法
9万
查看次数

减少git存储库大小

我试图寻找一个关于减少回购规模的好教程,但没有找到.我如何减少我的repo大小...它大约10 MB,但事情是Heroku只允许50 MB,我不在附近完成开发我的应用程序.

我已经将通常的嫌疑人(日志,供应商,文档等)添加到.gitignore.虽然我最近只添加了.gitignore.

有什么建议?

git git-clean

267
推荐指数
3
解决办法
12万
查看次数

哪个提交有这个blob?

鉴于blob的哈希,有没有办法获得在他们的树中有这个blob的提交列表?

git version-control

133
推荐指数
7
解决办法
4万
查看次数

如何将github上的问题转移到另一个回购?

它时不时地发生.某些库依赖于另一个库,并且用户打开属于错误仓库的问题.我可以将问题转移到其他回购中吗?

你可以说这个问题可以看作是两个回购问题,因为一个人依赖于另一个,只要一个人不能正常工作,两者都不会.但我宁愿谈论它所属的回购中的问题的解决方案.

github

89
推荐指数
4
解决办法
2万
查看次数

在GitHub上完全从Git repo和remote远程删除文件

我不小心添加了一个图像文件夹并提交.然后,我又做了一次提交.然后我git rm -f ./images再次使用并提交了这些文件.

现在,我在那个分支(master)中做了很多提交.在我的HEAD中,我没有该./static/images文件夹.

因此,我的回购规模增加了很多.如何完全删除这些斑点?我想从我的远程GitHub仓库中删除它.

git git-remote git-filter-branch git-rm

77
推荐指数
2
解决办法
7万
查看次数

Git pull error:无法创建临时sha1文件名

我有一个小的git repo设置,唯一真正的目的是能够在几台机器(工作,家庭,笔记本电脑)上进行本地开发.因此,我有一个分支,一旦我离开计算机,我提交/推动,拉一下我坐下 工作得很好,到现在为止.现在当我拉上我的"实时测试"机器时,我得到以下信息:

remote: Counting objects: 38, done.
remote: Compressiremote: ng objects: 100% (20/20), done.
remote: Total 20 (delta 17), reused 0 (delta 0)
error: unable to create temporary sha1 filename .git/objects/ed: File exists

fatal: failed to write object
fatal: unpack-objects failed
Run Code Online (Sandbox Code Playgroud)

在网上搜索我能找到的唯一真正的答案如下:http://marc.info/? l = git&m = 122720741928774&w = 2,它基本上表明这是一个虚假的错误,它在堆顶上,因此没有说什么关于什么是真的错了.

我从哪里可以找出问题所在?

编辑:删除本地副本并重新克隆

git

38
推荐指数
6
解决办法
6万
查看次数

如何真正删除git分支(即删除所有对象/提交)?

我有一个像git树

                 A---B---C topic
                /
           D---E---F---G master     <--
Run Code Online (Sandbox Code Playgroud)

我想删除主题及其上的所有对象.

我记下了主题的SHA ID,然后输入:

git branch -D topic
git gc                                   #  <-- I also tried prune here...
git checkout -b temp <SHA1 ID of topic>
Run Code Online (Sandbox Code Playgroud)

在最后一个命令之后,我希望得到一个错误(类似于"不存在的对象ID ......"或类似的那样).但是没有错误,gitk显示与上面相同的树结构?

我错过了什么 - 我认为gc/prune应该删除所有无法访问的对象?

git branch git-gc

23
推荐指数
2
解决办法
4126
查看次数