我个人只是安装Cygwin并继续使用常用的* nix shell工具,但是我需要向一些需要一些新手友好的客户提出软件推荐。 (s)是大多数静态HTML类别,但是它们需要部署到的服务器没有可用的1990年代常规协议集合(例如,没有FTP)。实际上,无法访问任何图形界面。部署通过Git处理。需要将更改推送到只能通过SSH密钥登录访问的远程存储库。由授权密钥推动的对master分支的任何提交都会触发一个将站点部署到生产服务器的钩子脚本。
我正在建议Windows的Git客户端:

使它成功设置和初始化相对简单...

...一个或多个本地存储库。
...单个git + ssh远程服务器。
...使用RSA密钥对进行身份验证(此生成将是一个奖励)。


具有一个简单的界面,在不了解分布式版本控制的复杂性的情况下,很容易完成提交和推送的基本工作流程。

每个客户端都有一个GitLab实例,该实例在每个域中都有一个项目,这使得添加其公钥变得相当容易。它还提供了每个项目的克隆/远程URL,并使得检查远程存储库的状态变得相当容易。
首选开源,但任何信誉良好的免费软件都是可以接受的。我应该将它们指向哪些客户端软件?
编辑:到目前为止,大多数建议似乎都集中在Git所有功能的完整前端上。我正在寻找更精简的东西,它只涵盖基础知识,而不是与大型犬一起跑步,更适合于特定任务。我在这里考虑的是KISS原则,适用于那些不将版本控制用于其他任何用途而只想“上传”其网站的人。

评论

请注意,对于OSX,我也曾问过类似的问题,但我特别希望使用熟悉且易于使用的工具。跨平台是可以的,但是我有一个想法,对于新手来说,最好的新手解决方案将是每个平台的固有特性,因此在回答时请记住这一点。

不确定这是否足以回答问题:我只在Windows上使用过PortableGit。这是我第一次使用Git(我从SVN“迁移”过来的),并且效果很好:安装起来很容易。来自Windows的Git的完整套件信息。 FWIW。

我真的很想看看up和downvotes:D

在发帖时,@ ManuelSchneid3r + 74 / -0。答案是+ 58 / -2,+ 48 / -3,+ 34 / -0,+ 12 / -0,+ 8 / -1,+ 2 / -0,按投票顺序排序。

刚刚加入这个SO网站,所以我还没有答案,但这是Axosoft的一个相当新的产品:gitkraken.com它似乎是那些现代的Node内置应用程序之一,尚不支持子模块,但到目前为止它以简单的方式提供了强大的功能,这让SourceTree望尘莫及。

#1 楼



它与Windows Explorer集成(无需学习新的UI)
开源(GPL)
设置/初始化新本地回购:




基本功能位于上下文菜单的顶部(同步,提交,推入和拉出):



评论


@Jbaruch初始化新的本地存储库有多容易?一个git + ssh遥控器?认证?它是开源的吗?您未解决的问题中设置了特定要求。

–奥利
2014-02-18 19:12



我仍然不认为这是高质量的答案。不过,它开始符合最基本的要求。从该链接的元文章中获得更多引用:“您还应该谈论您可能想到的任何潜在古怪之处,甚至发现那些被认为是产品劣势的事物。总之,与其他人分享您的经验,而不仅仅是您知道它存在。”

–奥利
2014-2-19在10:43

如果您没有任何相关经验,也许您不应该推荐它?我认为,您应该改善此答案或删除它,然后在问题中添加评论。

–奥利
2014年2月19日在13:45



删除唯一相关且正确的答案?!那真是太棒了。可以肯定的是,这个网站正以这种态度去往各地。

–JBaruch
2014年2月19日14:20在

TortoiseGit与Git一样简单。如果其他人为您设置了该文件,则只需在资源管理器中右键单击文件(或文件夹),然后选择“ Git Commit”,即可提交更改。

– Ben Miller-记住莫妮卡
2014年2月20日下午16:26

#2 楼

我从Github For Windows,然后从Git Extensions迁移到SmartGit,并推荐它。这就是为什么-


跨平台(Java制造)
非常容易设置和使用。如果您以前有过任何git客户的经验,那么您就不会花一分钟时间从事业务。

便携式

简单干净的用户界面。主界面仅显示更改的文件以及大的“提交”,“合并”,“推”和“拉”按钮。




商业软件,但免费供私人使用。

对于git初学者或非git用户,唯一的麻烦就是设置SSH密钥。一旦完成并克隆了第一个存储库,它将很简单,而且您将不必打开控制台。

评论


这个问题非常适合没有git(或vcs)经验并且不打算拥有任何git(或vcs)经验的人。您能否评论一下该用例如何工作?听起来好像您的连锁店中的早期产品可能会更好。什么是“ Git扩展”?

–卡莱布
2014年2月20日在9:35

我将SmartGit用作我的第一个git客户端,并且只需少量学习就可以轻松使用。我会推荐给任何人。

–bd33
2014年6月11日下午16:45

但是JAVA。不不不。

– CAD bloke
15年7月27日在2:53

Java的?你在开玩笑吗?到处写一次毁灭!

–user148298
15年7月31日在21:48

我非常同意。 SmartGit可能是最好的简单版本控制客户端。它具有您在GUI中可能需要的几乎所有功能,但是如果您不需要任何高级功能,则仍然非常易于使用。而且,只要您不是编写Java软件的人,Java软件就很棒。除了那个Swing业务。太丑了

– GregRos
2015年8月7日在10:32



#3 楼

我正在使用Atlassian SourceTree并非常喜欢它。 -Git的几乎所有功能都存在(但是GitHub却没有),例如,我没有找到重新构建GitHub fork的方法。使用普通的Git命令是可行的-添加远程等,但不是开箱即用)
支持GitFlow

好的UI:




注意-此屏幕截图来自较旧的版本。较新版本的UI更简单。

底线-我发现它几乎是完美的,可用于IDE中未涵盖的所有需求。

评论


看起来太复杂了-按钮太多。我不想要“功能丰富”而不是“功能稀疏”。对于了解分支树和差异树以及所有这些好东西的人来说,这可能很棒,但对于实际上没有计划学习git的新手而言,则不是。我需要一些东西来掩盖甚至在提交之前进行基本登台的复杂性。

–卡莱布
2014-02-18 11:51



最后,还有其他使用Sourcetree的人!

– marka软件
2014年6月12日,下午1:51

到目前为止,SourceTree是最好的,但是它们没有Linux版本。乍一看似乎令人生畏,但实际上根本没有。使用非常简单。

– mawburn
2014年7月9日在1:37



他们只是更新了SourceTree接口,这使它的体积减少了一些。我个人非常喜欢。我是整个Git的初学者,多亏了这个客户,我只花了几个小时就变得足够舒适。

– B.K.
14年8月20日在1:40

如果使用SourceTree,请坚持使用1.7版。 1.8太可怕了。 1.7的下载链接:downloads.atlassian.com/software/sourcetree/windows/…

–戴夫
16年4月13日在22:53

#4 楼

我非常喜欢Windows的Git(msysGit)。
它具有三个“模式”-Bash(您可以执行所有操作),Windows Context Menu和GUI(您可以执行以下操作很多,但是我会表示非常用户友好)。



使设置和初始化相对简单:非常容易



一个或更多本地存储库:初始化非常简单,并且您可以根据需要进行任意操作而不会发生冲突。

单个git + ssh远程控制:容易-如果需要,可以轻松添加更多远程将来也是如此。 (请参见下面的屏幕快照,可通过GitGUI-> remote-> add访问)

使用RSA密钥对进行身份验证(生成该密钥将是额外的收获):是的,尽管仅通过cmd行(请参阅本教程)

具有一个简单的界面,在不了解分布式版本控制的复杂性的情况下,很容易完成提交和推送的基本工作流:是的,请参见屏幕截图,




在cmdline中,您可以做所有事情(非常多);该GUI确实具有很多功能,但是前屏幕上没有显示任何复杂的内容(仅与提交相关),其他所有内容都隐藏在菜单中。



评论


我并不完全是菜鸟,但我每天都不使用Git,而且我遇到了很多问题-无法找到合并窗口。添加文件和撤消更改确实非常困难,而且界面也很棘手。

– Bomberlt
16年4月11日在7:00

#5 楼

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



免费用于非商业用途
跨平台(Windows,Mac,Linux)
多配置文件支持
一键式撤消和重做
内置合并工具
拖放以进行合并,变基,重设,推送和更多操作
可调整大小,易于理解的提交图
查看应用程序中的图像差异
子模块和Gitflow支持
与GitHub或Bitbucket帐户集成





#6 楼

我见过的最简单,最简单的是适用于Windows的GitHub: hack TBH)。

评论


IMO,从词汇表中获取和推送的遗漏损害了其作为非github工具的实用性。

– Gusdor
2014年8月21日在8:46

太简单了。很快,您会发现它没有足够的功能。例如,我没有找到,它是否支持隐藏。

–迈克尔·弗雷基姆(Michael Freidgeim)
17年4月23日在13:32

对于新手来说,这并不是太简单,这就是OP的目的。

–约瑟夫·戴克斯特拉(Joseph Dykstra)
18-10-2在17:32

#7 楼

ungit具有高度的易用性和易理解性(顾名思义)

https://github.com/FredrikNoren/ungit

安装:

npm install -g ungit


它是基于Node.js的,运行的服务器可供用户在浏览器中查看,因此它是跨平台的。

不确定是否管理SSH对于用户,但这绝对是我可以看到的。

评论


这个GUI吸引了我。我不为它基于javascript(个人偏见,而不是世界末日)而感到兴奋,但是可视界面看起来对Git来说是尽可能防白痴的。 Ungit有一个很棒的教程,但是不幸的是它是法文的,仍然值得一看,只是视觉上看到Ungit的动作。

– O.M.Y.
2015年10月11日17:27



我不喜欢它在存储库中放置一个“ node_modules”目录,其中包含数千个文件。为什么?

–塔马斯·塞莱伊(TamásSzelei)
16年4月28日在8:39

@TamásSzelei没告诉任何人,但我实际上没有尝试过;-)但是它是否特别对待node_modules?其他目录不一样吗?这不是.gitignore问题吗?

– Ciro Santilli郝海东冠状病六四事件法轮功
16年4月28日在8:41

这取决于您如何看待它。当然,您可以gitignore,但是我不愿意将更改推送到该存储库的每个用户,只是因为我的git客户端将其源代码(部分?)放入了存储库中。当然有人会问我在C ++项目中对“ node_modules”到底在做什么。

–塔马斯·塞莱伊(TamásSzelei)
16年4月28日在9:18

@TamásSzelei啊,好的,它实际上是在创建文件,我以为只是显示它们。错误报告,然后链接到它;-)

– Ciro Santilli郝海东冠状病六四事件法轮功
16年4月28日在9:22

#8 楼

Git Cola


跨平台(Linux,Windows,OSX)
FOSS
GitKraken宣传自己比Git Cola更出色



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


提交
恢复上一次本地提交(更改描述,添加丢失的更改)
提交所选行的更改(隔离不相关的更改)
查看日志(包含DAG工具)


#9 楼

几乎没有人提及Git Extensions,这让我感到惊讶。我已经使用了很多年,并且发现它比Tortoise Git更用户友好。