這是歷史版本頁面 — 看 GitHub Desktop 最新版本

不會用 Git 指令?GitHub Desktop 能做什麼

GitHub Desktop 軟體圖示 GitHub Desktop 3.3.4 資料更新 2017-04-01 閱讀約 7 分鐘

你大概遇過這種狀況:手邊有個專案想丟上 GitHub 備份,或想抓別人的開源專案下來改,但開啟終端機看到 `git clone`、`git push`、`git merge` 這些指令就頭痛。明明只是想把程式碼同步一下,卻得先搞懂一堆引數,一個不小心打錯字,整個分支亂掉,更不知道怎麼救回來。你當下只想用滑鼠點一點就把事情做完,而不是背指令。

很多人遇到這情況,會硬著頭皮去查 Git 教學,但看完還是一知半解;也有人改用網頁版 GitHub 慢慢上傳檔案,但專案一多、檔案一改,這種做法馬上變成惡夢。這類圖形介面的 Git 工具,切入點就是把「版本控制」這件事變成看得見的操作——哪個檔案改了、改了什麼、要提交到哪個分支,全部用介面呈現,讓你不碰指令也能完成工作。

GitHub Desktop 操作介面
GitHub Desktop 的操作介面

01GitHub Desktop 到底能拿來做什麼?

它是一套把 Git 操作圖形化的桌面軟體,主要功能包含複製遠端倉庫到本機、建立分支、提交變更、傳送 pull request、合併分支,以及檢視提交歷史。你不需要在終端機打指令,這些動作都能透過按鈕和選單完成。它特別針對 GitHub 平台設計,登入帳號後可以直接看到你的倉庫清單,也能一鍵複製別人的專案到本機。

02我不會任何 Git 指令,用這套軟體學得會嗎?

可以。它的介面設計就是為了降低 Git 的學習門檻,主要操作都圍繞著「複製倉庫」「建立分支」「提交變更」這幾個動作。你只要看得懂「Commit」「Push」「Pull」這幾個按鈕,就能開始用。但要注意,它不會教你 Git 的底層概念,如果你完全不懂分支、合併是什麼意思,建議還是先花半小時瞭解一下基本名詞,操作起來會更順。

03它跟直接在 GitHub 網頁上傳檔案有什麼差別?

網頁版只能一次上傳單一檔案,而且無法處理大量檔案變更、分支切換或衝突解決。GitHub Desktop 是把整個倉庫同步到本機,你可以用自己習慣的編輯器改程式碼,改完之後在軟體裡一次提交所有變更,還能看到每個檔案改了哪些內容。對於有多個檔案、多次修改的專案,這套流程比網頁版有效率得多。

GitHub Desktop 介面畫面 2
GitHub Desktop 介面畫面

04它能不能處理多人協作的流程?

可以。它支援建立分支、傳送 pull request、合併分支,也支援共同作者標記。團隊成員各自開分支開發,完成後透過 pull request 合併回主線,這些流程都能在介面裡完成。不過它不包含程式碼審查或 issue 管理功能,那些還是要回到 GitHub 網頁上操作。它負責的是「把程式碼同步好」這一段,協作流程的討論和追蹤還是靠 GitHub 平台本身。

05遇到合併衝突時,這套軟體能幫我解決嗎?

它會標示出哪些檔案發生衝突,但不會幫你自動解決。衝突發生時,軟體會列出衝突檔案,你需要用自己慣用的編輯器開啟這些檔案,手動決定要保留哪邊的內容,改完之後再回到 GitHub Desktop 提交變更。換句話說,它負責「告訴你哪裡有衝突」,實際修改還是要靠你自己。

06這套軟體適合什麼樣的人用?

適合三種人:剛開始接觸 Git、不想碰指令的初學者;習慣用圖形介面操作、不喜歡終端機的開發者;以及主要使用 GitHub 平台、不需要支援其他 Git 服務的人。它把常見操作都變成視覺化按鈕,對設計師、檔案撰寫者這類偶爾需要提交程式碼的人來說,也比指令介面友善很多。

GitHub Desktop 介面畫面 3
GitHub Desktop 介面畫面

07我主要是用 GitLab 或 Bitbucket,這套軟體適合我嗎?

不適合。GitHub Desktop 是專門為 GitHub 設計的,官方說明明確指出它不支援 GitLab 或 Bitbucket。如果你用的是這兩個平台,需要改用它們各自的工具,或選擇支援多平台的 Git 使用者端,例如 SourceTree。這點在安裝前要先確認清楚,免得裝完才發現無法連上你的倉庫。

08介面只有英文,會不會很難操作?

介面確實只有英文,沒有中文語系可以切換。不過它的操作詞彙不多,主要就是 Repository、Branch、Commit、Push、Pull、Fetch 這幾個字,只要稍微熟悉一下就能上手。如果你對英文介面完全無法接受,操作時會需要一直查單字,這套軟體對你來說會比較吃力,可以考慮找有中文介面的替代工具。

09這套軟體需要付費嗎?有沒有什麼使用限制?

軟體本身是免費的,但使用完整功能必須要有 GitHub 帳號,官方說明指出沒有帳號就無法管理倉庫或與他人協作。GitHub 帳號有免費方案,可以建立不限數量的公開和私有倉庫,但進階功能如較多的 CI/CD 分鐘數、進階協作工具等,需要付費升級方案。軟體本身不會另外收費,但 GitHub 平台的高階功能不是全部免費。

GitHub Desktop 介面畫面 4
GitHub Desktop 介面畫面

10我發現它更新頻率好像不高,會不會有什麼問題?

從版本紀錄來看,它近兩年只更新了兩次,更新頻率確實不算頻繁。這代表功能新增的速度比較慢,但對於一個功能穩定的工具來說,不頻繁更新不一定代表有問題。如果你需要的是持續有新功能、新介面的工具,這點可能要納入考量;如果你只是要一個能穩定同步倉庫的工具,更新慢反而代表介面不會一直變。

11它跟 SourceTree 比起來,我該怎麼選?

兩者都是免費的 Git 圖形介面工具,但 GitHub Desktop 只支援 GitHub,SourceTree 同時支援 GitHub 和 Bitbucket。如果你只用 GitHub,GitHub Desktop 的介面更簡潔、操作更直接;如果你需要連 Bitbucket 或其他 Git 服務,SourceTree 的彈性更大。另外,GitHub Desktop 的介面只有英文,SourceTree 有中文介面,這點也可以列入考量。

12我發現它的評分人數不多,這代表它不好用嗎?

評分人數少不代表軟體不好,只能說樣本數不多。GitHub Desktop 是 GitHub 官方推出的工具,使用人數其實不少,只是願意去評分的人不多。你可以先安裝試用看看,反正免費,實際操作過最準。如果你習慣參考大量評分來判斷軟體好壞,這套軟體的評分參考價值有限,建議直接看官方檔案或實際用過再決定。

下載與官方連結

前往官方網站 下載 GitHub Desktop

GitHubSetup.exe · 連結指向軟體原廠

版本紀錄

再看 5 筆

看完整版本清單

這一版改了什麼

What's new in this version:

GitHub Desktop 3.3.4
- Updated: Git Shell updated to v2.11.0 containing a lot of performance improvements
- Updated: Git LFS updated to v1.5.5
- Updated: Posh-Git updated to the latest version
- Fixed: Hang when logged into a GitHub Enterprise instance that is in maintenance mode

GitHub Desktop 3.3.3
- Updated Git Shell updated to v2.10.2

GitHub Desktop 3.3.2
- Updated: Git Shell updated to v2.10.1 which updates Curl to 7.50.3 and fixes some issues working with repositories over HTTPS with domains that use self-signed certificates
- Fixed: Unable to resize the app to a width of 1024

GitHub Desktop 3.3.1
- Updated: Force usage of TLS 1.2 when the client supports the protocol

GitHub Desktop 3.3.0
- Updated: Git Shell updated to v2.10 which includes major performance improvements to interactive rebase among other enhancements
- Updated: Git LFS updated to v1.3.1
- Fixed: Dpi scaling on Windows 10 Anniversary Edition caused blurry fonts

GitHub Desktop 3.2.0
- Added: New button to open a repository in Atom or Visual Studio
- Updated: Git Shell updated to v2.9.0.1
- Improved: Better error message when publishing a repository that already exists on the server
- Fixed: Crash due to an unhandled COMException thrown by the default text input spellchecker

GitHub Desktop 3.1.1
- Fixed: Crash when using a Windows theme with drop shadows enabled

GitHub Desktop 3.1.0
- New: Dark theme now available from Options menu
- Added: Icons indicating whether a file was added, removed or modified
- Fixed: Unable to add repository which exists at drive root
- Fixed: Crash due to incorrect handling of input arguments on launch
- Fixed: Crash due to COM exception when interacting with Taskbar
- Fixed: Crash when scanning filesystem for local repositories
- Fixed: Created SSH keys not added to ssh-agent on first launch
- Fixed: Crash due to decoding malformed parameters on restart
- Updated: Posh-Git now includes new icons in prompt
- Updated: Git Shell updated to v2.8.1
- Updated: Git LFS updated to v1.2.0
- Updated: Git Shell adds Visual Studio 2015 developer tools and other common tools to $PATH

GitHub Desktop 3.0.17
- Fixed: Crash when updating the Windows taskbar with information but the taskbar is not ready or not found

GitHub Desktop 3.0.16
- Fixed: Excessive memory allocations in large repositories that caused out of memory errors
- Fixed: Commit selection would stop working if one commit failed to load
- Fixed: Various memory and performance improvements
- Updated: Git Shell updated to v2.7.4

GitHub Desktop 3.0.15
- Improved: Reduced memory consumption when pruning merged branches
- Improved: Reduced memory consumption by requesting smaller avatars

GitHub Desktop 3.0.14
- Fixed: Posh-Git update does not work for users running Powershell v2

GitHub Desktop 3.0.13
- Added: Issue suggestions when creating commit messages by pressing the # key
- Updated: Git Shell updated to v2.7.1
- Updated: Posh-Git now includes new icons in prompt
- Fixed: Crash when trying to rapidly load diffs for multiple Git-LFS files
- Improved: Local branches that have been merged into the default branch are automatically pruned
- Improved: Arrow keys and Page Up/Down can can be used to scroll through diffs

GitHub Desktop 3.0.12
- Fixed: Updated Authenticode certificate to replace obsolete SHA1 certificate
- Fixed: Rare crash when hovering over commit graph

GitHub Desktop 3.0.11
- Fixed: Unable to view diffs in LFS-enabled repositories

GitHub Desktop 3.0.10
- Improved: CTRL + ~ opens Git Shell in addition to ~
- Improved: CTRL + Enter creates a PR when used within the pull request panel
- Improved: Updated Git LFS to v1.1.0
- Fixed: Cloning large Git LFS-enabled repositories would fail when exceeding one hour
- Fixed: Rare crash when saving git attributes in repository settings
- Fixed: Extracting Git shell components could fail when using certain anti-virus programs
- Fixed: Git LFS accessible when launching using shell.ps1