搭建git for windows伺服器(100%可以成功)

來源:互聯網
上載者:User

標籤:run   cte   步驟   sshd   國外   images   exit   軟體   粘貼   

    既然Git在Linux下面非常好用,為什麼還要搭建git windows的伺服器,因為不是所有的使用者都需要在linux下面做開發,對吧,還有很多使用者選擇使用windows做開發。

      看到很多網友嘗試部分不成功,所以對內容部分做了修改。

      日期:2015.10.14

 

      日期:2016.10.15修訂

建議安裝時都以管理員權限運行,否則可能有些目錄建立什麼需要許可權,尤其是win7使用者。

 

      科普一下:

      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]8.10.8: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 斷行符號,看能不能出現提示使用者名稱和密碼的視窗,不能,則說明之間有許可權問題,先解決這個問題,後面應該就可以通了。

 

 

 

 

http://blog.csdn.net/code_style/article/details/38764203

 

搭建git for windows伺服器(100%可以成功)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.