Re: Source Code Repository Conventions


Hi Mike,

I think what you and I discussed yesterday in person is fine: new
repositories can be in git, but do not convert existing ones.  My
preference is globally to use mercurial, but I recognize I am probably
a minority opinion.

git submodules are dangerous, as they are not "version controlled" and
they should be avoided.

-Matt

On Tue, Jul 14, 2015 at 11:20 AM, Mike Freemon <mfreemon@xxxxxxxxxxxx> wrote:
> Following up on our discussion yesterday during the developers meeting
> regarding source code repository conventions:
>
> https://wiki.ncsa.illinois.edu/display/NDS/Source+Code+Repository+Conventions
>
> The point has been raised since the meeting that branching is not the same
> between hg and git.
>
> * git branch != hg branch
> * git branches are more like hg bookmarks  <-- use these for lightweight
> development
> * hg branches are more heavyweight and the information about them is baked
> into the commit for all time
> * there should be only a very small number of long-lived hg branches in a hg
> repository
>
> As a bit of an aside, git submodules work differently than hg
> subrepositories.  We are currently using git submodules in at least one of
> the NDS repositories.  I consider this an aside since we don't really need
> to use submodules (AFAICT).
>
> The main issue is the branching and merging conventions we want to adopt.
> These conventions (the language we use and the documentation we write) are,
> on a day-to-day practical level, closely associated with the tools we use
> and the terminology of those tools.  I'm certain either mercurial or git
> would work for us just fine.  It does, however, seem like a good idea to
> just pick one and go with it.
>
> Please comment.
>
> Various random links that touch on this topics:
>
> *
> https://docs.python.org/devguide/gitdevs.html#main-differences-between-git-and-hg
> * https://jhw.dreamwidth.org/1868.html  (pro hg)
> * https://felipec.wordpress.com/2013/08/27/analysis-of-hg-and-git-branches/
> (pro git)
> * https://git-scm.com/book/en/v2/Git-Tools-Submodules
> * https://mercurial.selenic.com/wiki/Subrepository
>
> - Mike
>



Other Mailing lists | Author Index | Date Index | Subject Index | Thread Index