2011-10-04 89 views
2

,我开始使用GitHub的这个周末,一个新的个人项目(我们还可以使用在工作GIT)和他们的教程我做到以下几点:为初始GitHubs流程提交

$ mkdir ~/Hello-World 
$ cd ~/Hello-World 
$ git init 
$ touch README 

再经过添加我最初的承诺我添加了原点,然后可以直接推:

$ git remote add origin [email protected]:username/Hello-World.git 
$ git push origin master 

通常情况下,我一定要拉上一个新的回购,将其复制到我的服务器,然后才能开始推动它进行git clone --bare。他们怎么能跳过这一步?

回答

3

GitHub上的回购已经是空白回购,所以您可以直接开始推送。
这种 “all about "bare" repos -- what, why ”文档中(如所示出的“ Setting up backup (mirror) repositories on GitHub”)

更多关于裸回购。

+0

由于GitHub裸回购首先没有任何提交,您可以直接将您自己的历史从本地回购添加到裸GitHub回购。 – VonC

+0

+1所以只是为了确定,gitolite也是这样,是对的吗? – stivlo

+0

@stivlo:是的,Gitolite确实创建了裸回购(但它会添加它自己的挂钩;)):https://github.com/sitaramc/gitolite/blob/pu/src/gitolite.pm#L227 – VonC

0

在服务器上创建一个空的存储库就足够了,之后你可以将你的存储库推送到它。

UPDATE:正如VonC指出的,新的存储库必须是裸露的才能这样做。我没有意识到这一点,因为我使用gitolite来创建存储库,我想它会创建裸设备。

配置示例的gitolite回购:

repo adir/myrepo 
     RW+  = user1 
     RW+  = user2 
     R  = user3 

所以要创建gitolite回购我刚刚的conf/gitolite.conf添加配置一样,然后提交和推送更改。我在笔记本电脑上编辑,推送到服务器并触发回购创建。非常舒服。

0

没有必要压缩回购并将其复制到您的服务器。只需运行git init --bare即可首先在您的服务器上创建裸回购,然后您可以推送,就像使用github一样。