題:
什麼是Windows的良好的新手友好圖形Git客戶端?
Caleb
2014-02-18 16:51:43 UTC
view on stackexchange narkive permalink

我個人只是安裝 Cygwin並繼續使用常用的* nix shell工具,但是我需要向一些需要一些新手友好的客戶提出軟件建議。

情況是,有幾個客戶開發了大多數靜態HTML類別的網站,但是他們需要部署到的服務器沒有可用的1990年代通常的協議集合(例如,沒有 FTP)。實際上,無法訪問任何圖形界面。部署通過Git處理。需要將更改推送到只能通過SSH密鑰登錄訪問的遠程存儲庫。由授權密鑰推動的對master分支的任何提交都會觸發一個將站點部署到生產服務器的鉤子腳本。

我希望為Windows建議一個 Git客戶端,該客戶端:

  • 使設置和初始化相對簡單...
    • ...一個或多個本地存儲庫。
    • ...一個git + ssh遠程控制器。
    • …使用 RSA密鑰對進行身份驗證(生成此密鑰將是額外的收穫)。
  • 具有一個簡單的界面,其中基本無需了解分佈式版本控制的複雜性,即可輕鬆完成提交和推送的工作流程。

每個客戶端都有一個 GitLab實例,每個實例有一個項目域,並使其添加公鑰變得相當容易。它還提供了每個項目的克隆/遠程URL,並使得檢查遠程存儲庫的狀態變得相當容易。

首選開放源代碼,但可以接受任何知名的免費軟件。我應該將它們指向哪些客戶端軟件?

編輯:迄今為止,大多數建議似乎都集中在Git所有功能的完整前端上。我正在尋找更精簡的東西,這些東西只涵蓋基礎知識,而不是與大型犬一起跑步,更適合於特定任務。我在想 KISS原則,適用於那些將版本控制用於其他任何用途而只想“上傳”其網站的人。

請注意,我問了一個[OSX的類似問題](http://softwarerecs.stackexchange.com/q/1307/429),但是我特別希望熟悉和容易使用的工具不為所動。跨平台是可以的,但我想對於新手來說,最佳的新手解決方案將是每個平台的固有特性,因此在回答時請記住這一點。
不確定是否足以回答這個問題:我只在Windows上使用過[PortableGit](http://goo.gl/A8w06J)。這是我第一次使用Git(我從SVN“遷移”過來的),並且效果很好:安裝起來很容易。來自[Git for Windows](http://msysgit.github.io/)的完整套件信息。 FWIW。
我真的很想看看up和downvotes:D
發佈時,@ManuelSchneid3r + 74 / -0。答案是+ 58 / -2,+ 48 / -3,+ 34 / -0,+ 12 / -0,+ 8 / -1,+ 2 / -0(按投票順序)。
剛剛加入這個SO網站,所以我還沒有答案,但這是Axosoft提供的一個相當新的產品:http://www.gitkraken.com/它似乎是那些現代的Node內置應用程序之一,並且沒有還支持子模塊,但到目前為止,它以簡單的方式提供強大功能而使SourceTree望塵莫及。
也剛剛加入此SO網站,我可以向所有喜歡IDE的人添加Visual Studio 2015(甚至免費版)對Git的強大支持。它易於管理添加/編輯/刪除的文件;綜合合併工具;簡單的設置。它不支持SSH,但除此之外,它是Windows上Git的最佳工具之一。
八 答案:
#1
+84
JBaruch
2014-02-18 18:09:08 UTC
view on stackexchange narkive permalink

對於初學者來說,沒有像 TortoiseGit這樣的東西。

  • 它與Windows資源管理器集成(無需學習新的UI)
  • 開放源代碼( GPL)
  • 設置/初始化新的本地存儲庫:

Setup/initialize new local repo

  • 基本功能位於上下文菜單的頂部(同步,提交,推送和拉出):

TortoiseGit

強烈建議這樣做。
@Jbaruch請閱讀[this meta post](http://meta.softwarerecs.stackexchange.com/questions/86/youre-doing-it-all-wrong),並相應地編輯答案。
@Olli,我發現我的答案與該帖子中的說明基本一致。我明確說明了為什麼該產品符合要求,突出了相關功能並表達了對此的看法。缺少了什麼?
@Jbaruch初始化新的本地存儲庫有多容易?一個git + ssh遙控器?認證?它是開源的嗎?您未解決的問題中設置了特定要求。
讓我們把@Olli帶到[meta](http://meta.softwarerecs.stackexchange.com/questions/582/is-the-perfect-enemy-of-the-good),我對這個站點的工作方式有一些想法。
@Olli添加了一些東西。
我仍然不認為這是高質量的答案。不過,它開始符合最基本的要求。從該鏈接的元文章中獲得更多引用:“您還應該談論您可能想到的任何潛在古怪之處,甚至發現那些被認為是產品劣勢的事物。總之,與其他人分享您的經驗,而不僅僅是您的知道它存在。”
再來一次。我不使用該工具的ATM。因此,我沒有發現任何怪異,問題,缺點等。我沒有任何相關經驗。我現在應該刪除答案嗎(好的答案,經過充分解釋,提供有價值的相關信息)? NP,真的。如果您只期待完美,那就算我了。與現有的完美相比,我更喜歡現有的優勢。
如果您沒有任何相關經驗,*也許您不應該*推薦它?我認為,您應該改善此答案或刪除它,然後在問題中添加評論。
刪除唯一相關且正確的答案?!那真是太棒了。可以肯定的是,這個網站正以這種態度去往各地。
讓我們[繼續聊天中的討論](http://chat.stackexchange.com/rooms/13128/discussion-between-olli-and-jbaruch)
TortoiseGit與Git一樣簡單。如果其他人為您設置了該文件,則只需在資源管理器中右鍵單擊文件(或文件夾)並選擇“ Git Commit”,即可提交更改。
我不會將Tortoise工具推薦給初學者,因為它們太簡陋。沒有GUI可以告訴他們發生了什麼。我認為該工具適合於高級用戶,這些用戶在發出git命令時知道會發生什麼。
我在閱讀了此建議後嘗試了此操作,但我個人覺得它在5分鐘內太令人沮喪,因此我下載了SourceTree並發現它更易於使用...主要是因為有一個接口。我同意T.T.的評論
*“它與Windows資源管理器集成”。有獨立的便攜式版本嗎?
儘管TortoiseGit是一個功能強大的工具,並且外殼集成非常好,但它在可用性方面並沒有贏得任何獎項。我敢肯定,這與大多數git命令沒有一個簡化的界面,適用於所有內容的不同窗口和工具以及某些為虐待狂者打造的界面不同。我認為,它不符合OP要求的“適用於Windows的良好的新手友好型圖形化Git客戶端”的標準。
我個人更喜歡不使用Tortoise GIT。雖然Tortoise SVN是一個很棒的SVN工具,但是Tortoise GIT還是從Tortoise SVN借來了太多,保留了許多SVN術語和工作流程。 “ GIT方式”做事有點困難或不清楚。例如,一個人永遠都不知道Tortoise GIT中的“同步”是什麼意思-因為沒有這樣的本機命令。另一方面,如果以“ GIT方式”執行操作與SVN領域的大多數開發人員無關,則無論出於何種原因都決定使用GIT。烏龜GIT起作用。
在使用TortoiseHg多年之後,我認為TortoiseGit會提供類似的體驗。錯誤。儘管您可以通過一個統一的UI在“汞工作台”下對Mercurial進行任何處理,但TortoiseGit卻是完全分散的。沒有“中央窗口”,只有許多相互分離的面板,它們感覺不完整,彼此不一致並且令人困惑。簡而言之,您需要先了解git命令,然後才能使用TortoiseGit,而您可以使用TortoiseHG多年,並且永遠不要觸摸命令行。因此,我認為TortoiseGit是一個不好的工具。
@RogerSanders-這是很好的反饋。我處於類似的情況-長時間使用TortoiseHg相當有效率,但對於原始Mercurial或總體而言,命令行版本控制,我還是一無所知。我可以接受Git贏得了“勝利”(例如,參見Bitbucket),因此我正在尋找與TortoiseHg等效的Git。令人失望的是,TortoiseGit沒有達到“ Tortoise特許經營”標準。
#2
+83
Avi
2014-02-20 15:18:26 UTC
view on stackexchange narkive permalink

我從Github For Windows,然後從Git Extensions移到了 SmartGit,並推薦了它。這就是為什麼-

  1. 跨平台(用Java製造)
  2. 非常容易設置和使用。如果您以前有過任何git客戶的經驗,那麼您就不會花一分鐘時間從事業務。
  3. 便攜式
  4. 簡單乾淨的用戶界面。主界面僅顯示更改的文件以及大的“提交”,“合併”,“推”和“拉”按鈕。

    SmartGit

  5. ol>

    商業軟件,但免費供私人使用。

    對於git初學者或非git用戶,唯一的痛苦是設置SSH密鑰。一旦完成並克隆了第一個存儲庫,它就很簡單了,您將不必打開控制台。

這個問題是專門針對那些**沒有任何git(或vcs)經驗**並且不打算擁有任何經驗的人的。您能否評論一下該用例如何工作?幾乎聽起來您的連鎖店中的某個東西可能會更好。什麼是“ Git擴展”?
@Caleb我已經編輯了答案。由於許多服務都集成了插件,因此** Git Extensions **可能易於設置,但是對於後者的“管理倉庫”部分,我更喜歡SmartGit,因為它更簡單。 +便攜式
我將SmartGit用作我的第一個git客戶端,並且只需少量學習就可以輕鬆使用。我會推薦給任何人。
SmartGit確實非常好,無論是對於新手還是經驗豐富的用戶。您可以對發生的事情有很好的視覺感,並簡化大多數日常任務。
當我完全不了解Git並仍然設法使用它時,我還使用SmartGit作為我的第一個Git GUI。話雖這麼說,我認為自己更像是高級用戶。
它唯一的問題是僅通過SSH支持BitBucket。我希望它可以通過HTTPS支持BitBucket。還有其他便攜式客戶端嗎?
@Drazick他們最近添加了對HTTPS傳輸的支持:)
@RamRachum,是什麼版本?
我不確定,可能是6或6.5。他們的變更日誌不完整。
該軟件包含由virutstotal https://www.virustotal.com/en/file/ce116edb5b1e4913a9402ba18a464fef5123a824f2b1a2f5a364e4f80502016e/analysis/1422037393/檢測到的病毒
它不是免費的,其試用版
但是JAVA。不不不。
Java的?你在開玩笑嗎?到處寫一次毀滅!
我非常同意。 SmartGit可能是最好的簡單版本控制客戶端。它具有您在GUI中可能需要的幾乎所有功能,但是如果您不需要任何高級功能,則仍然非常易於使用。另外,只要您不是編寫Java軟件的人,Java軟件就很棒。除了那個Swing業務。太醜了
#3
+69
JBaruch
2014-02-18 17:47:14 UTC
view on stackexchange narkive permalink

我正在使用 Atlassian SourceTree,並且非常喜歡。

這裡是練習:

  • 免費(不是開源的AFAIK想法) )
  • 功能豐富-Git的幾乎所有功能都在那裡(不過GitHub卻沒有),例如,我沒有找到重新構建GitHub fork的方法。可以使用普通的Git命令-添加遠程等,但不是開箱即用)
  • 支持GitFlow
  • 好的UI:

    screenshot

注意-此屏幕截圖來自舊版本。較新版本的UI更簡單。

底線-我發現它幾乎是完美的,可用於IDE內未涵蓋的所有需求。

看起來太複雜了-按鈕太多。我不想要“功能豐富”而不是“功能稀疏”。對於了解分支樹和差異樹以及所有這些好東西的人來說,這可能很棒,但對於實際上沒有計劃學習git的新手來說,這可能不大。我需要一些東西來掩蓋甚至在提交之前進行基本登台的複雜性。
得到它了。我應該添加另一個還是刪除這個以放置一個?
我可以看到一些觀點,可以讓它作為對其他人的警告,以警告_is_not_不適合該問題,但這只是(希望)最終導致堆棧不足,我可以看到想要稍後將其刪除。我猜這將取決於您是否認為這是一個很好/有效的答案(您的其他條目似乎對這個問題的理解更好)。
最後,還有其他使用Sourcetree的人!
到目前為止,SourceTree是最好的,但是它們沒有Linux版本。乍一看似乎令人生畏,但實際上根本沒有。使用非常簡單。
我使用SourceTree,但移至SmartGit。 SourceTress很不錯,但是我發現該界面很麻煩。可以肯定個人喜好,但我只是發現該界面在SmartGit上更強大。 SourceTree仍然相當不錯,但不是我的喜好。
他們只是更新了SourceTree接口,這使它的體積減少了一些。我個人非常喜歡。我是整個Git的初學者,多虧了這個客戶,我只花了幾個小時就變得足夠舒適。
@Caleb在該屏幕快照中,您的用例將看起來更加複雜。如果您是貢獻者,我強烈建議至少深入研究一下git。無知不是藉口。 Sourcetree“工作正常”,並且在運行時看起來不錯。
我總是遇到一些性能問題。真的很慢。我的整個團隊都有相同的看法。
我希望他們有一個便攜式版本。
一點也不復雜...在與其他客戶經歷令人沮喪的經歷後,我在幾分鐘內學會了它。在詢問是否可以發送崩潰信息後,Smart Git實際上在我身上崩潰了,哈哈。這是運行時發生的崩潰,因此甚至無法進入主屏幕。 SourceTree很棒,除了在處理具有許多文件的我的repo時會有些凍結。
GIT本身俱有任何用戶都應該學習和理解的功能。 “稀疏”和“簡單”是很好的特性,但是對於SourceTree,您需要知道您在做什麼。我對“慢”的評論得到了回應。如果您了解正在發生的事情,那麼您就會知道為什麼以及何時會期望它變慢,但是,隨著不斷的“哦,令人難堪的SourceTree崩潰”消息,我發現它幾乎是無法接受的。一旦崩潰實際上搞砸了合併並嚴重搞砸了我的提交,那浪費了很多時間。調查其他GUI ...
SourceTree有問題,實際上並沒有添加任何抽象層。
如果使用SourceTree,請堅持使用1.7版。 1.8太可怕了。 1.7的下載鏈接:https://downloads.atlassian.com/software/sourcetree/windows/SourceTreeSetup_1.7.0.32509.exe
此時的SourceTree是一個令人難以置信的垃圾(1.9.x)。非常慢,左右崩潰,用戶界面有錯誤且無響應,開發主要圍繞更新圖標進行。每次使用血壓都會升高。
#4
+18
Nick Dickinson-Wilde
2014-02-18 21:17:57 UTC
view on stackexchange narkive permalink

我非常喜歡Windows的 Git(msysGit)。它具有三個“模式”-Bash(您可以在其中進行所有操作),Windows上下文菜單和GUI (在這裡您可以做很多事,但是我會說非常對用戶友好)。

  • 使設置和初始化相對簡單: 非常容易
    • 一個或多個本地存儲庫:初始化非常簡單,您可以根據需要進行任意操作,而不會發生衝突。
    • 單個git + ssh遙控器:簡便-如果將來需要,也可以輕鬆添加更多的遙控器。 (請參見下面的屏幕快照,可通過GitGUI-> remote-> add訪問)
    • 使用RSA密鑰對進行身份驗證(生成該密鑰將是一個額外的獎勵):是的,您可以儘管僅通過cmd行(請參閱此教程
    • 也具有一個簡單的界面,在該界面中,提交和推入操作很容易完成,而無需了解分佈式版本控制的複雜性: >

    在cmdline中,您可以一切(相當多); GUI確實具有很多功能,但是前屏幕上沒有顯示任何復雜的內容(僅與提交相關),其他所有內容都隱藏在菜單中。

    screenshot >

我並不完全是菜鳥,但我每天都不使用Git,而且我遇到了很多問題-無法找到合併窗口。添加文件和撤消更改確實非常困難,而且界面也很棘手。
#5
+15
talles
2014-06-11 02:01:12 UTC
view on stackexchange narkive permalink

我見過的最簡單,最簡單的是適用於Windows的GitHub

GitHub for Windows screenshot

但有一個警告非github 存儲庫一起使用並不直觀(感覺就像是hack TBH)

IMO,由於缺少詞彙獲取和推送功能,損害了其作為非github工具的實用性。
太簡單了。很快,您會發現它沒有足夠的功能。例如,我沒有找到,它是否支持隱藏。
對於新手來說,這並不是太簡單,這就是OP的目的。
#6
+15
Dariusz Woźniak
2016-10-31 23:09:14 UTC
view on stackexchange narkive permalink

您可以考慮使用 GitKraken。一些功能:

  • 免費用於非商業用途
  • 跨平台(Windows,Mac,Linux)
  • 多配置文件支持
  • 一鍵撤消&重做
  • 內置合併工具
  • 拖放以合併,重新設置基礎,重置,推送等
  • 可調整大小,易於理解的提交圖
  • 在應用程序中查看圖像差異
  • 子模塊和Gitflow支持
  • 與GitHub或Bitbucket帳戶集成

enter image description here

#7
+12
Ciro Santilli 郝海东冠状病六四事件法轮功
2014-11-13 23:04:42 UTC
view on stackexchange narkive permalink

ungit 具有很強的易用性和易理解性(顧名思義)

https://github.com/FredrikNoren/ungit

安裝:

  npm install -g ungit  

這是基於Node.js的,並且運行用戶可以查看的服務器

不確定它是否為用戶管理SSH,但這絕對是我可以看到他們在做的事情。

這個GUI吸引了我。我不為它基於javascript(個人偏見,而不是世界末日)而感到興奮,但是可視界面看起來對Git來說是盡可能防白痴的。有一個很棒的[Ungit教程](https://www.youtube.com/watch?v=DrQQyEEqmwI),但不幸的是它是法文,還是值得一看的,以直觀的方式查看Ungit的運行情況。
我不喜歡它在我的倉庫中放置一個“ node_modules”目錄**,裡面有成千上萬個文件。為什麼?
@TamásSzelei沒有告訴任何人,但是我實際上沒有嘗試過;-)但是它會特別對待`node_modules`嗎?其他目錄不一樣嗎?這不是`.gitignore`問題嗎?
這取決於您如何看待它。當然,您可以“ gitignore”它,但是我不願意將更改推送到該存儲庫的每個用戶,只是因為我的git客戶端將其(部分?)源代碼放入了存儲庫中。當然有人會問我在C ++項目中對“ node_modules”到底在做什麼。
@TamásSzelei啊,好的,它實際上是在創建文件,我認為它只是在顯示它們。錯誤報告,然後鏈接到它;-)
#8
  0
mmv-ru
2019-02-14 04:26:17 UTC
view on stackexchange narkive permalink

Git Cola

  • 跨平台(Linux,Windows,OSX)
  • FOSS
  • GitKraken宣傳自己更好Git Cola

enter image description here

我在Linux上將其用作主要的git接口。日常操作非常容易

  • 提交
  • 還原上次本地提交(更改描述,添加缺少的更改)
  • 提交選定行的更改(隔離不相關的更改)
  • 查看日誌(包括DAG工具)


該問答將自動從英語翻譯而來。原始內容可在stackexchange上找到,我們感謝它分發的cc by-sa 3.0許可。
Loading...