[ros-dev] Microsoft switched to Git

Zachary Gorden drakekaizer666 at gmail.com
Thu Feb 16 02:45:08 UTC 2017


I've used both git and svn in work environments. If all you do is git pull
and git push, you end up with lots of noise in the commit log with git
tracking every single merge because you don't rebase. Combined with the
fact that git has an upper limit on how much history it can track and the
solution literally being to purge history, I'm not exactly sure why all of
you are so enthused about it. Unless the team wants to adopt having a
single person being responsible for all commits going into the canonical
master repo to avoid all of the problems with how git tracks history, the
commit log is going to be next to useless for actual tracking of history.
If you don't care about the commit history, then sure, go ahead, but I
personally would like to be able to easily track changes back cleanly. We
get that basically for free with svn right now. With git, the usage
patterns that those of you pushing for git are promoting actively works
against keeping a clean history.

On Wed, Feb 15, 2017 at 7:32 PM, Alex Ionescu <ionucu at videotron.ca> wrote:

> Sure, I didn't count git add because you can do it with git commit -a.
> git status/log are the same as the svn equivalents. just like git
> diff/svn diff. I was mainly referring to regular workflow.
>
> In fact, I think outside of stash (which is an optional, but awesome,
> feature) fetch and rebase (which I refuse to learn), all commands map
> 1:1 with svn. That's why I don't get this whole "it takes way more
> commands/steps in git".
>
> git commit -a -m "[BOOTLIB] Fix yet another bug]"
> git push
>
> Done.
>
> Best regards,
> Alex Ionescu
>
>
> On Wed, Feb 15, 2017 at 3:48 PM, David Quintana (gigaherz)
> <gigaherz at gmail.com> wrote:
> > My command set is a bit more extended:
> >
> > git clone -- similar to svn checkout into a new folder
> > git checkout -- for changing the current branch
> > git pull -- effectively the same as "svn update", xcept it gets the
> entire
> > change history, not just the latest commit data
> > git push [--force] -- for sending changes into the repository
> > git fetch -- downloads stuff but doesn't apply it to the checkout copy
> > git merge -- can be used to merge the remote data (in which case it's
> like
> > svn update), or to merge from another branch
> > git branch
> > git add
> > git commit
> > git stash save/pop -- can be used to temporarily undo some changes, and
> be
> > able to recover them afterward
> > git status, git log, ... -- for getting info about the state of the
> > repository and the uncommited changes
> > ... and more I that I use less often
> >
> > I do agree that it is a bit annoying that git has so much trouble pulling
> > with local changes, and that is the one area where svn just simply works
> > better. In every other aspect, I have come to like the "git way" more.
> >
> > That said, I avoid commandline git as much as possible. I prefer to use
> > TortoiseGit (in Windows, at home), or SourceTree (at work, where I use a
> > mac, and SourceTree is probably the least shitty frontend for git).
> >
> > I like to say, that for someone who knows Subversion, learning git
> starts by
> > realizing that all the usual svn concepts, apply to git, just NOT with
> the
> > remote repository. The svn-like commands work with the local repository
> > clone, and then it has a separate command set for interacting with
> remotes.
> > Of course it's not a 1:1 match, but it's a good starting point. If you
> are
> > able to "catch" that, then learning how to work with git becomes a LOT
> > easier.
> >
> >
> >
> > On 16 February 2017 at 00:31, Alex Ionescu <ionucu at videotron.ca> wrote:
> >>
> >> On Wed, Feb 15, 2017 at 9:01 AM, Zachary Gorden
> >> <drakekaizer666 at gmail.com> wrote:
> >> > Why is there a need for anything beyond "git commit" or "git push" or
> >> > "git
> >> > pull" to do anything?
> >>
> >> Good question. I've never used any other git command other than those
> >> (except git checkout). Oh, that's lie, I've also used "git branch",
> >> just like on svn, to create a branch.
> >>
> >> Sounds like you've never actually used git? I've never rebased in my
> >> life, and I don't know what other commands even exist.
> >>
> >> Best regards,
> >> Alex Ionescu
> >>
> >> _______________________________________________
> >> Ros-dev mailing list
> >> Ros-dev at reactos.org
> >> http://www.reactos.org/mailman/listinfo/ros-dev
> >
> >
> >
> > _______________________________________________
> > Ros-dev mailing list
> > Ros-dev at reactos.org
> > http://www.reactos.org/mailman/listinfo/ros-dev
> >
>
> _______________________________________________
> Ros-dev mailing list
> Ros-dev at reactos.org
> http://www.reactos.org/mailman/listinfo/ros-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.reactos.org/pipermail/ros-dev/attachments/20170215/2f469439/attachment-0001.html>


More information about the Ros-dev mailing list