首先,返回主界面,點擊File => Clone Repo,選擇 Clone with URL,以下圖:javascript
圖 5‑1 SSH方式克隆倉庫界面html
SSH 方式的Clone步驟:java
圖 5‑2 完成倉庫克隆git
點擊 Open Now 就會打開剛剛克隆到本地的倉庫,點擊OK則會確認該提示,但不執行操做。web
若是不知道服務器中倉庫的位置,在瀏覽器中填寫 192.168.0.155 並跳轉。會出現如下界面:瀏覽器
圖 5‑3 網頁上的倉庫信息服務器
找到想要clone的倉庫,複製對應行的最右側的 Git 連接,並將該連接粘貼入程序的 URL 文本框中便可。app
SCP 和 SSH 兩種方式的差異在於填寫的URL不一樣(即第2步開始,步驟會有所不一樣),以下圖:ssh
圖 5‑4 SCP方式克隆倉庫post
填寫的URL爲 192.168.0.155:/src/Test.git,與SSh方式有所不一樣。
按照第3步的步驟,點擊Clone按鈕,在程序頂部即會出現一些提示如圖 5‑5,點擊 便可下載服務器上倉庫的代碼。
若頂部出現後續選項,連續點擊相應的綠色按鈕(如:Open, Initialize等)
圖 5‑5 用給定的用戶名鏈接服務器
這裏咱們使用默認的git用戶便可。
克隆好服務器上的倉庫後,你還不能當即使用它來進行版本控制,有幾個重要的地方須要修改:
鼠標移動到REMOTE樹狀圖下方的origin處,如圖 5‑6,
右鍵點擊該欄(或者點擊右側的下拉菜單欄按鈕),會出現如圖 5‑7示的下拉菜單:
圖 5‑6 鼠標移至遠程origin分支
圖 5‑7 點擊下拉菜單按鈕
使用SCP方式進行鏈接時須要注意:GitKraken程序(version3.5.0)有個bug,咱們須要手動修正它。點擊Edit origin 能夠看到相似圖 5‑8的界面:
圖 5‑8 編輯遠程分支URL
若是編輯框內的 155: 和 src 之間缺乏斜槓的話,咱們就須要在「155:」後面添加一個斜槓「/」(若程序沒有這個bug就能夠跳過這一步),不然在Push和Pull時就會出現找不到遠程倉庫的錯誤。
當添加遠程倉庫而且成功拉取(pull)操做後,能夠看到如圖 5‑9的程序界面:
圖 5‑9 成功pull遠程倉庫後的界面
注:若直接使用 Gitweb 搭建 Git 服務器,那麼默認的倉庫列表是這樣的:
並無最後一列的 「Git 連接」,這一列是用 JavaScript 代碼生成的,這裏貼出用的 JS 代碼(未使用 JQuery)
1 function gitLink() { 2 var createTable = function(params) { 3 // header 4 var t = document.createElement( params.type ); 5 var tc = document.createElement( params.childType ); 6 tc.setAttribute( "class", params.class ); 7 tc.setAttribute( "id", params.childId ); 8 9 tc.innerHTML= params.text || ""; 10 t.appendChild( tc ); 11 return t; 12 } 13 14 15 var tables = document.getElementsByTagName("table"); 16 var table = tables[0]; 17 var tableRows = tables[0].children; 18 19 var h1 = createTable( { type:"th", 20 text: "Git 連接", 21 class: "header", 22 childType: "a", 23 childId: "headerLink" 24 } ); 25 26 tableRows[0].appendChild( h1 ); 27 28 for( var i = 1; i < tableRows.length; i++ ) { 29 // console.log( tableRows[i] ); 30 var project = tableRows[i].children[0].children[0].innerHTML; 31 var linkName = "ssh://git@" + location.hostname + "/src/" + project; 32 var r = createTable( { type: "td", 33 text: linkName, 34 class: "list", 35 childType: "a", 36 childId: "gitlink"+i 37 } ); 38 tableRows[i].appendChild( r ); 39 } 40 } 41 42 document.onreadystatechange = function() { 43 if( document.readyState == "complete" ) { 44 gitLink(); 45 } 46 }
將代碼保存成 js 文件(假設保存名爲 gitlink.js),放在 gitweb 目錄下的 static 目錄下面。
以本服務器爲例,gitlink.js 將被放在 /var/www/gitweb/static 目錄下
而後打開 gitweb 中的 gitweb.cgi 文件,搜索 javascript
如圖, 120 行和 4257 行的代碼是手動修改的,目的是爲了在生成的 HTML 頁面中引用 gitlink.js 文件。
而後打開瀏覽器,就能看到如下的內容:
若是不知道如何搭建 git 服務器,能夠參考這篇文章 lighttpd 與 gitweb 搭建服務器。