逐步将存储库转换为对某些文件使用git-lfs。一次一个文件

问题描述 投票:0回答:1

我们有一个高价值且破坏成本很高的仓库。

它还具有较大的XML文件,当使用Webapp进行合并和git日志历史记录时,会导致严重问题。另外,它可能会使我们的CI / CD效率低下。换句话说……促使人们转向git-lfs的常规事物。

我们要仔细做到这一点。一次一个文件。

我见过类似下面列出的方法:

cp *.xml ~/tmp
git rm *.xml
git commit
git lfs track *.xml
git add .gitattributes
git commit; git push

在新目录中:

git clone --mirror $remote; cd repo
bfg --delete-files '*.xml'
git reflog expire --expire=now --all && git gc --prune=now --aggressive
git push

返回src:

mv repo repo.bloated
git clone $remote; cd repo
cp ~/tmp/*.xml .
git add *.xml # (it now puts them in lfs)
git commit; git push

我该如何做类似的事情,但是只是从一个大的xml文件开始,以减轻过渡期间的风险。我们宁愿与维护该文件的开发人员轻松联系,隔离更改并在此处进行爬网。更改100多个文件可能会拖累开发人员,而且代价昂贵。

在上述示例中,我们只是将*更改为特定的文件名吗?

git-lfs git-lfs-migrate
1个回答
0
投票

[如果有人有类似的担忧,我们已经对此进行了试验,很高兴地说我们已经能够安全,谨慎地做到这一点。

逐渐过渡到git lfs是可行的,并且要逐个文件地进行尝试,您可以将上述片段中的*替换为特定文件,然后一次执行一个文件。

稍后您可以根据需要进行全过程的养猪,使用bfg等。>

如果您完全确定要执行此操作以尝试git lfs,则可以执行此操作。我们已经在我们的仓库中做到了这一点,以便在广泛采用之前对其更加熟悉,并且效果很好。

© www.soinside.com 2019 - 2024. All rights reserved.