现在·Github·上有一个Repo已经快超过1G的体积了,但是其实项目本身并不大,主要是由于有些大图片多次修改,所以GIT保留的这些图片的历史记录文件非常大,但是我这些图片又不需要历史记录信息,请问:
1、怎么删除这些文件的版本控制信息,只保留最新文件?
2、在一开始创建新文件的时候,能不能设置改文件不参与版本控制,但是又能push到远程?
1
Septembers 2015-07-04 00:34:38 +08:00
美术资源单独一个仓库比较好吧?适当的版本管理还是需要的
|
2
Septembers 2015-07-04 00:34:59 +08:00
再通过git submodule引入
|
3
ledzep2 2015-07-04 00:40:44 +08:00
我的感觉是 你根本不是需要github, 你需要dropbox.
|
4
Daniel65536 2015-07-04 00:44:01 +08:00
rm -rf .git
git init git add -A git commit git push -f |
5
Sinute 2015-07-04 00:49:33 +08:00 via Android 1
可以参考git pro移除对象那章
当你将 Subversion 或 Perforce 仓库转换导入至 Git 时这会成为一个很严重的问题。在此类系统中,(签出时) 不会下载整个仓库历史,所以这种情形不大会有不良后果。如果你从其他系统导入了一个仓库,或是发觉一个仓库的尺寸远超出预计,可以用下面的方法找到并移除大 (尺寸) 对象。 警告:此方法会破坏提交历史。为了移除对一个大文件的引用,从最早包含该引用的 tree 对象开始之后的所有 commit 对象都会被重写。如果在刚导入一个仓库并在其他人在此基础上开始工作之前这么做,那没有什么问题 ── 否则你不得不通知所有协作者 (贡献者) 去衍合你新修改的 commit 。 虽然不算一种常规的使用方法不过应该符合你目前的需求 |
6
catface 2015-07-04 00:50:15 +08:00
@Daniel65536 哈哈,干脆利落
|
7
xiaogui 2015-07-04 01:34:13 +08:00
感觉你正好该需要这个了
https://git-lfs.github.com/ |
8
582033 2015-07-04 01:35:02 +08:00 via Android
删掉.git目录
|
9
582033 2015-07-04 01:35:53 +08:00 via Android
2: 加入.gitignore
|
11
kaedea OP 这个问题换另一种描述就是:使用SVN或者GIT,当repo太大的时候,如何瘦身(可以删除不必要的历史记录)
|