[Git] PuTTY設定SSH host

[Git] PuTTY設定SSH host

前言

公司開始用Git,來做為Source Code的版本控管,但Git的入門門檻我是覺得有難度

因為Command Line的方式,始終讓人覺得有距離,難以親近(但某些資深的人特愛用Command Line,也許是我還太菜@@)

所以我喜歡用一些GUI的Tool來幫忙做版控,像是TotoiseGit

困擾

可是在TotoiseGit的使用上,卻總有個問題困擾著我= =

就是沒辦法Pull和Push!

但是不能Push倒還好,因為Push後,會卡一個Code Review,要Leader Review過後,才能合拼到Branch

但是Pull也不能,就覺得很奇怪@@

用TotoiseGit Pull,總會出現這錯誤訊息,git did not exit cleanly (exit code 1)

但是Command Line可以,所以我也沒特別揪結於這個問題(就深藏在心~)= =

發現

在偶然的情況下,我去查看了~/.ssh/config檔案,看到以下的設定:

Host sc1
  Hostname 192.168.1.7
  User alexch_cheng
  Port 29418

直覺會不會是這設定的問題呢??

再去查了remote的設定,其中Url的設定如下:

ssh://sc1/PROJECTBASE/dunhill/ATRZS11600/platform/ATRZS11600

於是我試著把remote Url的設定,sc1改為 192.168.1.7:29418,如下:

ssh://192.168.1.7:29418/PROJECTBASE/dunhill/ATRZS11600/platform/ATRZS11600

神奇的事情發生了,TotoiseGit Pull竟然成功了!兇手就是你(指~

解決

其實網路上資源很多,但最難的就是你該下什麼關鍵字來Google(Google嚴然變為搜尋的代名詞XD)

知道了問題所在,找起來輕鬆許多,因為TotoiseGit是用PuTTY來做為SSH連線的工具

而PuTTY並不支援~/.ssh/config裡對Host的設定,所以要搜尋怎麼為PuTTY來設定Host

要為PuTTY設定Host其實很簡單,首先,先下戴PuTTY的Client端程式

http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html

在Session的介面,填好Host Name、Port、Saved Sessions後,按下Save

就設定好了Session,如下圖:

但這邊還有一點不同,就是Session無法設定使用者帳號

所以我們必須在remote Url的設定裡,加入使用者帳號

ssh://alexch_cheng@sc1/PROJECTBASE/dunhill/ATRZS11600/platform/ATRZS11600

到這邊就大功告成,打完收功,又完成一篇文章XD

參考