On 26/05/2016 20:01, James wrote:
> 
> 
>> On 05/26/2016 04:32 AM, Peter Humphrey wrote:
>> Aye, there's the rub. Git is a closed book to me at the moment.
> 
> Hello,
> 
> I started a new thread for (2) reason. 
> 1. The original thread does not show up in my gmane, as it was
> down for a few days.
> 
> 2. I think 'subject drift' warrants a new thread. Anyway recap::
> 
> 
> You are not alone Peter. In fact there are so many git documents, howto
> and such that every time I 'dive in' I mostly get a mess. Thankfully,
> I keep duplicates of the codes in an old fashion directory tree 
> structure;(circa 35 years now).
> 
> Better yet MO writes::
> <snip>
> 
> You'll spend a while getting used to git, there's no way around it. You
> just have to pick a project and force yourself to use git all day. All
> of the commands have the wrong names:
> 
>   * Want to check out a repository? There's `git checkout`, but that's
>     not what it does. You want `git clone`.
> 
>   * Want to start a new branch? There's `git branch`, but what you
>     actually want is `git checkout`.
> 
>   * Want to reset the modifications you've made to a file? There's
>     `git reset`, but what you really want is `git checkout`.
> 
>   * Want to merge your changes with upstream? There's `git merge`,
>     but chances are, you want `git pull --rebase`.
> 
>   * Want to commit a new file? There's `git commit`, but it won't work.

No, those are all the correct names that git uses. Possibly years of
using cvs/svn has trained your brain to think in a particular way.

Git does not work that way. It's as different from svn as you can get
for 2 reasons:

1. There is no upstream master in git. YOU are YOUR master so you can't
checkout someone else's code. You can only clone it to make a whole new
repo that you are in charge of. There's not even a concept of an
upstream or downstream repo, except when you chose to use some other
repo in that way. Considering it so makes it so.

2. SVN works on files, so you commit files. git works with consistent
contained diffs so you commit a bunch of diffs as a unit to your repo
after adding a new file to the list of stuff to be tracked.

As Linux says, when confronted with two choices and no clear winner
between them, pick the opposite to what cvs does. Perhaps the git devs
went a tad overboard in being contrary :-)

-- 
Alan McKinnon
alan.mckin...@gmail.com


Reply via email to