所以我有了一个想法,我需要第二个意见,因为我担心我可能会离开我的摇杆。可以使用在客户端更新本地软件(即视频游戏或文字处理器)
Git的?例如,每次客户端启动器打开时,它都会运行git pull
。然后从包含完整客户端安装的主存储库中提取。
这是个好主意吗?怎么可能出错?这看不起来了吗?
已经存在像libgit2这样的库,它们允许将git集成到应用程序中,那么为什么不将它用于软件补丁呢?
答案 0 :(得分:2)
是的,事实上有些软件已经这样做了。例如,我使用带有zsh
扩展名的oh-my-zsh
,要求我在启动新终端时经常更新(并在用户接受时启动git pull)
这种方法最适用于解释型语言(而不是编译语言),因为git可以更有效地处理文本,但二进制文件可以正常工作。
请注意git
被滥用"对于其他事情 - 例如,流行的自制OS X包管理器使用git来更新其可用包的数据库。
答案 1 :(得分:1)
这是个好主意吗?
这是一个主观问题,所以我没有给你答案。但它肯定是一个有趣的想法。从the Git documentation
开始查看首先,如果尚不清楚,Git是基本上 内容可寻址文件系统,其上面写有VCS用户界面。 (强调添加)
Git是根据 plumbing 和瓷器来描述的。 plumbing 是后端,它实际上只是一个文件系统。 瓷器是您在与Git交互时习惯的,它非常适合源代码控制。
可能出现什么问题?
如果您使用它来分发二进制包,请确保check this link out。 Git可能会错误地认为二进制文件不是二进制文件。
还有很多关于Git没有很好地处理二进制文件的民意。我找不到任何原始材料来支持这一点,但我自己的经验是,它处理它们就好了。显然,你不能合并二进制文件,但我怀疑你是否会为你所描述的内容做到这一点。
很多其他事情都可能出错,因为Git会让你自己很开心地射击自己,但这就是(IMO)最大的优势之一。
这看不起吗?
对于每一个好主意,你会发现很多仇敌。对于每个坏主意,你会发现很多傻瓜。