Git / Mercurial(hg)意见 [英] Git/Mercurial (hg) opinion

查看:110
本文介绍了Git / Mercurial(hg)意见的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

首先,让我说我不是一个专业的程序员,而是一个需要它并且需要学习的工程师。我总是一个人工作,所以只有我和我的七个分裂的个性......并且我们作为一个团队工作:)我的大部分东西都是用C / Fortran / Matlab完成的,到目前为止我一直在学习git管理这一切。然而,虽然我没有遇到无法解决的问题,但我从来没有对它满意......对于我无法做到的一切,我必须查找一本书。而且,一段时间以来,我一直听到许多关于Mercurial的好消息。

现在,我的一位同事将不得不与我一起工作(我几乎为他感到难过)并且他开始学习Mercurial(他说他更喜欢它),我正在考虑自己的开关。

我们几乎完全在Windows平台上工作(尽管我管理相对好Unix工具和来自世界各地的东西)。

所以,我想知道,在所描述的情况下,我可以预期交换机会遇到什么问题。我听说Mercurial对于用户界面对于Windows用户更加友好。



它如何处理存储库?它是否像git一样创建它们(只是工作目录中的一个子目录),我可以复制整个项目目录(包括git repo),并将它们带到某个地方而无需额外思考? (当我选择使用git / svn时,我真的很喜欢)。

是否有任何可以推荐的好书(比如Pro Git,仅适用于Mercurial )。

什么是将Mercurial实现到Windows的Visual Studio / GVim或Windows资源管理器中的好方法,所以我可以相对容易地工作(我想避免使用命令行的一切有关它,就像在git shell中)。



是否还有其他我应该注意的事情(请不要将其指向其他问题......他们只是给了我很多信息,我不确定我应该采取什么样的重要措施,以及忽视什么)。我试图减少一些时间,因为我不能花所有时间重新学习Mercurial,就像我为git做的一样。



我也听说过git是c项目,而mercurial是蟒蛇......速度有没有明显的差异。 git非常快速......我会在工作中遇到一些等待的情况。



注意:我所有的项目都是可以的,中等大小......主要是数值模拟。 。10-15000行(medium size?)

解决方案


首先,让我说我不是一个专业的程序员,而是一个需要它并且需要学习的工程师。

这里也是工程师。我使用过Mercurial,Subversion,BitKeeper和CVS。还没有做到Git。


我听说hg对于Windows用户而言对用户界面更加友好。 / b>

不知道这里是什么意思,Git和Mercurial都是命令行工具。


它是如何处理储存库的?


这是一个分布式版本控制系统(DVCS ),就像Git一样。


它是否像git一样创建它们(只是工作目录中的一个子目录)只需复制整个项目目录(包括git repo),并将它们随身携带,无需额外思考? (当我选择使用git / svn时,我真的很喜欢)。

是的。 Mercurial的存储库位于工作目录的 .hg 目录中。此外,Mercurial在其存储库中有一个命名系统,以防止与FAT,NTFS或HFS +等不区分大小写的文件系统一起使用文件名时发生冲突。
$ b


是否有任何可以推荐的好书(比如Pro Git,仅适用于Hg)。


I 'd推荐网站: https://www.mercurial-scm.org/guide


什么是将hg实现到Windows的Visual Studio / GVim或Windows资源管理器中的好方法,所以我可以相对容易地工作就像在git shell中一样避免使用命令行)。

有一个名为 TortoiseHG 。我无法证明它有多好,因为我通常只是通过Cygwin使用命令行版本。


我也是听说git是c项目,而mercurial是python ......速度有没有明显的差异。 git非常快速......我会在工作中遇到一些等待的情况。


Mercurial相当麻烦。我不知道它如何与Git叠加,但它比Subversion快很多。


注意:我所有的项目都是让我们说,中等大小......主要是数值模拟...... 10-15000行(中等大小?)

听起来像我的东西。当然,不包括原始数据。



关闭主题...


我的大部分东西都是用C / Fortran / Matlab完成的,到目前为止我一直在学习git来管理它。


最近我一直在从Matlab转向Python ......


  • 没有许可证和维护废弃物担心。


  • NumPy,SciPy和MatPlotLib完成我所需要的大部分工作。

  • 我可以把我的代码和轻松地将它与基于套接字的代码集成在一起以便与仪器进行对话。 (我喜欢能够生成波形,将其下载到函数生成器,等待范围触发,获取其跟踪和统计信息,并将所有内容放入循环中。)

  • 我可以将它与PyGtk,PyQt,一个Web服务器,一个PDF生成器(ReportLib)以及谁知道其他内容整合在一起。
  • 我可以发布我的基于Python的代码,而无需处理许可或版税。

  • 与Matlab相比,Python更有纪律的软件开发方式。 Matlab的单功能每文件和单目录每类的东西是疯了。

  • Python更易于使用C和C ++代码进行扩展。那里的图书馆比较好。



只是一个想法。强>年后编辑:有一个Mac DVCS工具,名为 SourceTree 我一直很满意。它支持Git和Mercurial,并可在App Store上免费获得。


First, let me say I'm not a professional programmer, but an engineer who had a need for it and had to learn. I was always working alone, so it was just me and my seven split personalities ... and we worked okey as a team :) Most of my stuff is done in C/Fortran/Matlab and so far I've been learning git to manage it all. However, although I've had no unsolvable problems with it, I've never been "that" happy with it ... for everything I cannot do, I have to look up a book. And, for some time now I've been hearing a lot of good stuff about Mercurial.
Now, a colleague of mine will have to work with me on a project (I almost feel sorry for him) and he's started learning Mercurial (says he likes it more), and I'm considering the switch myself.

We work almost exclusively on Windows platform (although I manage relatively ok using Unix tools and things that come from that part of the world).

So, I was wondering, in a described scenario, what problems could I expect with the switch. I heard that Mercurial is rather more user friendly towards windows users, regarding the user interfaces.

How does it handle repositories ? Does it create them the same way as git does (just one subdirectory in a working directory) and can I just copy the whole project directory (including git repo) and just carry them somewhere with no extra thinking ? (I really liked that when I was choosing over git/svn).

Are there any good books on it that you can recommend (something like Pro Git, only for Mercurial).

What are good ways to implement Mercurial into Visual Studio/GVim for Windows, or into Windows Explorer so I can work relatively easily (I would like to avoid using the command line for everything regarding it, like in git shell).

Is there something else I should be aware of (please, on this don't point me to other questions ... they just give me a ton of info, and I'm not sure what is it that I should take as important, and what to disregard). I'm trying to cut some time, since I cannot spend all that time relearning Mercurial, like I did for git.

I've also heard git is c project, while mercurial is python ... is there any noticeable difference in speed. git was pretty speedy ... will I encounter some waiting while working.

Notice: All my projects are of let's say, middle size ... mostly numerical simulations ... 10-15000 lines (medium size?)

解决方案

First, let me say I'm not a professional programmer, but an engineer who had a need for it and had to learn.

Engineer here, too. I've used Mercurial, Subversion, BitKeeper, and CVS. Haven't made it to Git yet.

I heard that hg is rather more user friendly towards windows users, regarding the user interfaces.

Not sure what was meant here, Git and Mercurial are both command-line tools at heart.

How does it handle repositories?

It's a distributed version control system (DVCS), just like Git.

Does it create them the same way as git does (just one subdirectory in a working directory) and can I just copy the whole project directory (including git repo) and just carry them somewhere with no extra thinking ? (I really liked that when I was choosing over git/svn).

Yes. Mercurial's repository lives in a .hg directory in the working directory. Also, Mercurial has a naming system in its repository to prevent filename collisions if you use it with a case-insensitive filesystem like FAT, NTFS, or HFS+.

Are there any good books on it that you can recommend (something like Pro Git, only for Hg).

I'd recommend the web site: https://www.mercurial-scm.org/guide

What are good ways to implement hg into Visual Studio/GVim for Windows, or into Windows Explorer so I can work relatively easily (I would like to avoid using the command line for everything regarding it, like in git shell).

There's a tool called TortoiseHG. I can't attest to how good it is, since I usually just use the command-line version via Cygwin.

I've also heard git is c project, while mercurial is python ... is there any noticeable difference in speed. git was pretty speedy ... will I encounter some waiting while working.

Mercurial is pretty darn fast. I don't know about how it stacks up with Git, but it's a lot faster than Subversion.

Notice: All my projects are of let's say, middle size ... mostly numerical simulations ... 10-15000 lines (medium size?)

Sounds like my stuff. Not counting raw data, of course.

And off topic...

Most of my stuff is done in C/Fortran/Matlab and so far I've been learning git to manage it all.

I've been moving from Matlab to Python recently...

  • No license and maintenance crap to worry about.
  • It's all open source.
  • NumPy, SciPy, and MatPlotLib do most of what I need.
  • I can take my code and easily integrate it with socket-based code to talk to instrumentation. (I love being able to generate a waveform, download it to a function generator, wait for the scope to trigger, grab its trace and statistics, and put all that in a loop.)
  • I can integrate it with PyGtk, PyQt, a web server, a PDF generator (ReportLib), and who knows what else.
  • I can ship my Python-based code without having to deal with licensing or royalties.
  • Python is way better for disciplined software development than Matlab. Matlab's one-function-per-file and one-directory-per-class stuff is insane.
  • Python is easier to extend with C and C++ code. The libraries out there are better.

Just a thought.

YEARS LATER EDIT: There is a Mac DVCS tool called SourceTree which I've been very happy with. It supports both Git and Mercurial, and is available for free on the App Store.

这篇关于Git / Mercurial(hg)意见的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆