【发布时间】:2011-08-02 04:17:55
【问题描述】:
你好
我开始新项目,我想使用 git 进行源代码控制。我创建新文件夹并使用命令:git init 来初始化 repo。我的合作伙伴如何克隆我的回购协议?
干杯
【问题讨论】:
标签: git version-control project-management
你好
我开始新项目,我想使用 git 进行源代码控制。我创建新文件夹并使用命令:git init 来初始化 repo。我的合作伙伴如何克隆我的回购协议?
干杯
【问题讨论】:
标签: git version-control project-management
【讨论】:
如果你想要一些超级基本的东西,甚至 git 守护进程对你来说太多了,那么你可以创建一个 unix 权限组,将两个用户都添加到其中,创建一个文件夹并设置 gid 标志,然后初始化你的 git repos在那里。然后您需要添加一个更新后挂钩以确保文件始终是组可写的。
类似的东西。 coders 是您正在创建的组。 yanev 和 venay 是用户。 ~/shared 是您存储 git 存储库的位置。执行一次此设置。
groupadd coders
useradd -g coders yanev
useradd -g coders venay
mkdir ~/shared
chgrp coders -R ~/shared
chmod g+s -R ~/shared
每次你想创建一个 git repo 时在 ~/shared 中执行。
#! /bin/bash
# Create a repo that will be accessible to everyone in the group.
if [ $# -lt 1 ] ; then
echo Error: Need name of repo to create
exit 1
fi
name=$1
# Create the repo
git init --bare $name
# create the hook to ensure
hook=$name/hooks/post-update
echo -e "#!/bin/sh\n#\n# Ensure that everything's writable\n\nchmod g+rw -R $PWD/$name/\n" > $hook
chmod a+x $hook
# Start everything with group rights
chmod g+rw -R $name
像这样使用:
cd ~/shared
./create_shared project
cd ~/code
git clone ~/shared/project
(您的合作伙伴必须使用您的主文件夹的绝对路径。)
您可能应该只使用git daemon。如果它在您的网络上不起作用(例如,在大学),请与您的 IT 人员讨论如何使其正常工作。 :)
【讨论】:
有很多可能的方法。最简单但不是最好的方法是“git daemon”
你可以找到其他选项here
【讨论】: