Git服務器環境搭建

最近公司要求要換一個代碼管理工具,於是就選擇了Git,今天給大家分享一下環境的搭建

科普一下:

      1、TortoiseGit是什麼?沒錯,是個烏龜,就像它的殼一樣,僅僅是個殼,所以離不開真正的git(git for windows版本名字又叫msysgit,沒殼的烏龜還能叫烏龜?國外的貨就是喜歡把開源項目命名爲一些稀奇古怪的東西)。

      2、COPSSH是個什麼東西? 就是一個windows平臺的SSH服務器。

      3、Git-1.8.3-preview20130601.exe是個什麼東西?這就是真正的git。

      4、使用TortoiseGit裏面自帶的PuTTY Key Gen生成的密鑰對(公鑰和私鑰)爲什麼還要轉換? COPSSH根本不用生成任何key的,只需要添加客戶端提供上來的公鑰即可。


      

參考這位仁兄的方法:http://blog.csdn.net/aaron_luchen/article/details/10498181 ,基本上能成功90%,但是最終還是會出現這樣的錯誤,

比如:

Disconnected:No supported authentication methods available (server sent:publickey,keyboard-interactive)

比如使用Git Clone 怎麼都Clone不下來代碼等等。


比如:

fatal: protocol error: bad line length character: Micr

這樣的協議錯誤,應該選擇Linux shell and sftp,不應該選擇windows shell。


開始進入正題:

所以需要注意下面的步驟。

1、添加好了用戶以後,在COPSSH Pannel裏面添加好爲windows創建的用戶,比如名字叫git,看好了Password authentication可是沒有勾選的。


2、重點在這一步,修改配置文件,找到COPSSH安裝的目錄下面的etc目錄,比如C:\SSH\etc,用記事本打開ssh_config和sshd_config這兩個文件,兩個文件都要修改。

修改如下內容:

        找到PasswordAuthentication,如果前面有#號,刪掉,如果後面是yes,改成no

        PasswordAuthentication no

        找到PubkeyAuthentication,如果前面有#號,刪掉,如果後面是no,改成yes

        PubkeyAuthentication yes

        找到Port 22,刪除掉前面的#號

        Port 22


3、看下圖,一目瞭然,別告訴我你不知道這個軟件從哪裏打開的,既然安裝了烏龜TortoiseGit,當然是要去它的開始菜單裏面找了。保存好私鑰用於後面同步時Load用。


4、打開COPSSH安裝目錄下的home\git\.ssh目錄,打開authorized_keys文件,將剛纔上一步生成的公鑰,粘貼進來,點保存,退出。例如下圖:


5、重新啓動COPSSH,方法兩種,

      一種是點綠色按鈕,變紅後,再次點即可變綠色,綠色代表已經正常運行,提示Service is running,如果配置的有問題,有時候會出現,你點一下那個紅色按鈕,程序沒任何提示就直接關閉了,在這裏不得不罵一下這個軟件的開發人員,真是傻逼一個。就算是程序出錯了,來個Messagebox提示一下用戶會死嗎?而是直接給退掉了,真奇葩。

      另一種是進入windows服務裏面,點擊Openssh SSHD,再啓動服務。


5.5、下圖說明COPSSH運行正常:



6、同步代碼,假如服務器上已經創建了版本庫,如何使用烏龜軟件TortoiseGit同步下來,假如同步地址是這樣(局域網內):ssh://[email protected]:22/SSH/home/git/lib_database

同步成功:


後記

有人說要改下面的地方,真不知是怎麼想的,改了反而會導致Git Clone時的Load Putty Key變成灰色,導致在客戶端上無法選擇privatekey.ppk私鑰文件。


經網友評論多次反映,出現"git did not exit cleanly (exit code 128)"這樣的錯誤提示,一般是由於本機和服務器之間的權限問題,嘗試一下開始->運行->\\192.168.10.8 回車,看能不能出現提示用戶名和密碼的窗口,不能,則說明之間有權限問題,先解決這個問題,後面應該就可以通了。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章