有没有办法在linux上安装git分支(只读)?

时间:2016-02-24 10:49:36

标签: linux git mount

设置:在工作中我们有一个git repo,我们的脚本在那里。这些脚本需要在我们所有的客户端linux机器上访问(~400)。当前的解决方案是拥有一个文件服务器,它定期拉出主分支。然后安装(nfs + autofs)。

问题:是否有一种简单的方法来安装远程git分支只读?

我知道GitFS,但这似乎有点矫枉过正。我正在寻找轻量级的东西,最好是在内存中,即不用检查磁盘上的东西。我只需要访问一个分支,没有历史记录。

编辑: 要清除这一点:我想避免拉动和cronjobs这样的东西。最好的是透明地安装远程git存储库,就像只读nfs mount一样。

1 个答案:

答案 0 :(得分:1)

  

问题: 是否有一种简单的方法来安装远程git分支只读?

是的,你可以用几种方式做到这一点。 bundle和& archiveread-only存储库。

git bundle

# Clone the desired branch (-b flag)
# and pack it into a bundle with the desired name
git clone repo.bundle repo-copy -b master

这是一个包含只读模式所需分支的单个文件,因为它不是git存储库。

git archive

类似于上面的bundle命令

# Create a tar archive that contains the contents of the latest commit 
# on the current branch, and 
#extract it in the /var/tmp/junk directory.
git archive --format=tar --prefix=junk/ HEAD | (cd /var/tmp/ && tar xf -)