- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我们的开发团队一直在使用 git 进行版本控制,并使用 git-annex 存储大型二进制文件(数据二进制文件、图像、测试二进制文件等)。虽然我们已经能够设置和使用它,但我们遇到了一系列麻烦。
我们经常执行的给我们带来麻烦的常见操作是:
开发人员 1 为新功能添加了一些测试,并使用 git-annex 为测试添加了相应的数据。
git add <test-file>
git annex add <data-file>
git annex copy <data-file> --to=<remote location(we use s3 if that is relevant)>
git commit -m 'Tests with data'
git push
git annex sync
工作经过审查和 merge (我们使用 Github 进行托管并遵循 fork 模型,其中所有工作都由开发人员在自己的 fork 上完成,并通过 Pull 请求 merge 到主存储库中)
开发人员 2 获取/merge 上游并尝试在他的机器上运行测试。
git fetch upstream
git merge upstream/<branch>
git annex sync
git annex get
我们经常以测试数据未在 git 中跟踪或无法从远程位置下载而告终。
在我们的工作流程中使用 git-annex 的好方法是什么?
顺便说一句,还有哪些其他选项可以使此类工作流更好/更易于管理?
最佳答案
好的,我们开始:
手册 git annex v6 使用:
服务器 1 和服务器 2:
mkdir testdata
cd testdata
git init
git annex init "LocationNameIdentifyer"
git annex upgrade
git remote add OtherServerLocationNameIdentifyer ssh://otherserver.com/thedir
当此设置准备就绪并且目录中没有额外的文件时,您现在可以运行
git annex sync --content
如果两个位置都有文件你需要做
git add --all
在两个位置跟踪当前文件作为所谓的解锁文件
之后
git annex sync --content
假设在两个位置都运行了 3 次
所有内容都已 merge ,您现在可以在两个位置执行 cron git annex sync --content,并且在工作树中都有相同的文件,如果您想跟踪放在某个位置的新文件,您执行 git add 而不是 git annex add git annex添加会将文件添加为所谓的锁定文件,从而形成一个完整的其他工作流程
关于git - 什么是 git-annex 的良好工作流程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27582468/
嗨,我正在考虑开发一种文件传输程序,想知道我是否想要尽可能好的加密,我应该使用什么? 我会用 C# 开发它,所以我可以访问 .net 库 :P在我的 usb 上有一个证书来访问服务器是没有问题的,如果
我创建的这个计算两个数组的交集是线性的方法的复杂度(在良好、平均、最差的情况下)? O(n) public void getInt(int[] a,int[] b){ int i=0; int
我已经能够使用 RTCPeerConnection.getStats() API 获得 WebRTC 音频调用的各种统计信息(抖动、RTT、丢包等)。 我需要将整体通话质量评为优秀、良好、一般或差。
基本问题: 如果我正在讲述/修改数据,我应该通过索引硬编码索引访问文件的元素,即 targetFile.getElement(5);通过硬编码标识符(内部翻译成索引),即 target.getElem
在 Linux 上,我想知道要调用什么“C”API 来获取每个 CPU 的统计信息。 我知道并且可以从我的应用程序中读取 /proc/loadavg,但这是系统范围的负载平均值,而不是每个 CPU 的
在客户端浏览器中使用 fetch api,GET 或 POST 没有问题,但 fetch 和 DELETE 有问题。它似乎将 DELETE 请求方法更改为 OPTIONS。 大多数研究表明是一个cor
我是一名优秀的程序员,十分优秀!