2011-10-04 77 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一樣。