用了幾次 GitHub Desktop 之后,發現不好用,其圖形化界面功能有限。
推薦使用Git for Windows,官方網站 https://git-for-windows.github.io/
這里有我寫的Git和Github教程:http://www.cnblogs.com/schaepher/p/5561193.html
目錄:
一、 說明
二、 GitHub Desktop的下載過程
三、 GitHub Desktop下載錯誤處理
四、主要界面介紹(操作說明請直接跳到這里)
五、其他功能
六、我提交的Hello World
一、說明
真正的勇士,敢于在沒有翻♂墻的情況下去下載GitHub Desktop!
不知道是我沒設置好,還是因為沒翻♂墻,無法正常下載,只能用一些小技巧來下載。整個過程耗時五個半小時,從16:58到22:33。喜歡挑戰的同學,請務必自己試試,相當刺激。
如果已經下載好了,請點擊: 四、主要界面介紹
如果是用命令行進行操作,推薦這個教程:Git教程
二、GitHub Desktop的下載過程
2.1.
點擊Download GitHub Desktop進行下載。
或者直接點擊此處 下載。
2.2.
在安裝之前,先確保已經安裝了Microsoft .NET Framework 4.5。
Note: 當然,也可以直接打開,讓安裝程序自動幫你下載,不過有時候會下載失敗。此時就得通過搜索Microsoft .NET Framework 4.5下載了,這里提供一個下載頁面:點擊此處 進入下載頁面下載。
不過即使安裝了.net 4.5,也未必能繼續安裝。這里先假設能繼續安裝。
在安裝前:
- 復制 %SYSTEMROOT%\SYSTEM32\REGSVR32.EXE %SYSTEMROOT%\SYSTEM32\WUAUENG.DLL
- 按Windows鍵 + R(Windows鍵在Ctrl和Alt中間),運行cmd。點擊左上角,編輯-》粘貼
- 然后回車。提示成功。
2.3.
運行Microsoft .NET Framework 4.5安裝程序。
安裝完成后,重啟。
打開GitHubSetup.exe,如果能安裝,那是最好。如果不能,繼續看下去。
三、GitHub Desktop下載錯誤處理
錯誤提示:連接的主機沒有反應
看到圖片中的紅框,可知,需要下載一個名為GitHub.application的文件。
那我們手動下載,把鏈接復制下來,直接粘貼到瀏覽器地址欄回車下載,或者打開下載器(如迅雷)新建下載。
后來發現這里可以用正則表達式把鏈接都匹配出來
如果下載很慢,這里介紹自己摸索的小技巧。前提是要有云盤賬號,如百度云。這里以百度云為例:
在網盤里面新建一個文件夾,名字為github,因為待會兒有很多文件需要這樣下載。
打開離線下載:
離線下載完畢后,再下載到本地。
Note: 默認放桌面吧。
在桌面創建文件夾Application Files進入該文件夾,創建文件夾GitHub_3_0_5_2
Note: 該文件夾名字可能會改變,實際以下文提到的地址為準。
雙擊桌面上的GitHub.application,會有以下錯誤:
大致意思是缺少文件,在log里面可以知道缺少什么文件。舉個例子(這不是下載的第一個文件):
在ERROR SUMMARY里,可以看到缺少文件的信息。Downloading file后面的地址是本地路徑。
Note: 因為我的GitHub.application在桌面,所以它顯示桌面路徑。
其中
D:\personal\Desktop
這是我電腦的桌面的目錄(被我改過,默認不是這個,但是不影響本操作,可以無視)。
接著是
Application Files\GitHub_3_0_5_2
這就是上面提到的需要創建的兩個文件夾。紅色矩形框是文件名,復制文件名,并加到
http://github-windows.s3.amazonaws.com/Application%20Files/GitHub_3_0_5_2/
的末尾。然后用云盤離線下載,接著下載到剛才創建的文件夾里面。Note: 有一個文件是放在
Application Files\GitHub_3_0_5_2\Images
底下的,需要再創建這個文件夾。與此類似的還有ko、zh-Hant、ru文件夾。注意下載的時候文件夾分割符是“/”。
當下載到GitHub.exe.manifest這個文件時,就不需要每下載一個文件后就去執行GitHub.application來獲取錯誤報告里的文件列表。
打開GitHub.exe.manifest,codebase的值就是要下載的文件名,如下圖所示:
復制該文件名,并加到以下鏈接的后面:
http://github-windows.s3.amazonaws.com/Application%20Files/GitHub_3_0_5_2/
可以用 正則表達式 把所有文件名匹配出來,然后批量下載。
我把鏈接都做好了并放進文本里,可以下載 這個文件。
四、主要界面介紹
安裝完成后,桌面會出現兩個圖標
雙擊GitHub,進入主界面。
首先登陸:輸入GitHub賬號和密碼
登陸之后顯示主界面,此時可以跟著它的教程做一遍,熟悉大致流程:
接著是主界面的介紹,如下圖:
這里將對每個紅框的區域進行大致說明:
1. 這是新建功能,里面有:
Add 添加已創建的本地代碼庫
注意!如果在Create之前直接導入一個代碼庫(本地文件夾),會提示create a repository,點擊進入Create。不用更改,直接點擊下面的Create repository。
- 這時可能會自動幫你添加到Other部分(即上圖的3)。
- 也可能沒有任何變化,如果出現這種情況,請再次點擊Add選項。你會發現點擊Add repository也沒用。這時將Local path位置的路徑最后一個字母刪掉,接著補回來,這樣就可以成功Add了。(至于為什么要這么麻煩,我也不清楚,這個方法是我試出來的,如果你有其他更好的方法,分享一下吧)
- Create 創建新的本地代碼庫
Clone 從GitHub上下載已有的代碼庫
2. 這里是已經與GitHub同步的代碼庫。
3. 這里是本地的代碼庫。里面有:
- 沒有提交到GitHub的代碼庫
- 更改后未同步的代碼庫
4. 如果當前本地代碼庫有更改,會將更改的文件顯示在這里。這里只是緩存。
5. 如果想提交緩存里的修改修改到本地代碼庫,需要在這里填寫修改摘要(Summary)和詳細描述(Description)。然后點擊Commit to master,提交到本地代碼庫。
6. 如果按照上面的步驟提交到本地代碼庫,則可以看到那些文件都移動到這里了。此時提交到本地代碼庫完成。但是還需要將其同步到GitHub上面。
7. 上面4-6都是在這里的紅框選項卡內。這里表示最新情況。
8. 與上面7不同的是,這里表示提交歷史。也可以通過選擇下面的master上的圈圈來查看歷史提交。
9. 請求合并。如果你從其他人的GitHub上Fork代碼庫到你的GitHub并進行修改,又希望其他人將你的代碼與他的合并,可以提交請求。如果審核通過,那么你成為這個項目的貢獻者之一。
10. 與上面9不同的是:這里將你的代碼與你所參與的項目(有寫權限)進行同步(Sync)。如果是是第一次提交代碼庫,這里顯示的是Publish。
操作部分,以Helloworld為例:
如果先在GitHub中創建好了代碼庫,那么先用Clone功能,將代碼庫Clone到本地。此時會將其顯示在上圖的2中。
找到該代碼庫的本地位置。右鍵-》Open in Explorer。
把用Android Studio或其他IDE創建的Helloworld項目移動到這個文件夾內。
在上圖7,可以看到發生了變化。接著按照上面5-》6-》10,將項目同步到GitHub上。
五、其他功能
1 分支
- 左邊表示新建一個分支(branch),從當前的master中另外分出一個支線。
- 右邊可以切換分支
2 設置
選項 | 功能 |
---|---|
Undo most recent commit | 如果上面的第5中,Commit之后又想撤銷,則點擊。 |
Delete master... | 如果創建了新分支,又想刪除,則點擊。 |
Reponsitory settings... | 當前代碼庫的設置。 |
Open in Explorer | 在資源管理器中打開當前項目。 |
Open in Git Shell | 用命令行模式打開。 |
View on GitHub | 到GitHub上查看。 |
Options... | 軟件的設置。 |
3 版本回退
在某個代碼庫的History選項卡下,是該代碼庫每次提交的情況。左邊最上面的版本是最新版,最下的是初始版本。
左邊上面的紅框表示版本回退,Revert "Game EightDigit",回退到Summary為Game EightDigit的版本。
版本回退操作,只需選定某個版本,點擊右邊紅框處的Revert即可。該Revert可以跨版本回退,不用一步步回退。
Note: GitHub Desktop之前的版本好像是把它區分開。分為
- Roll Back to this Commit
- Revert this Commit
- Roll Back to this Commit
這些說明差不多足夠一般使用了。
六、我提交的Hello World
Helloworld的地址:
https://github.com/sefzu2015Ggavin/schaepher_HelloWorld
順便發一個前幾天做的八數碼游戲。做這個主要是感受一下啟發式搜索。界面沒有美化,只做了主要功能。
https://github.com/schaepher/EightDigit
文章列表