News for hackers. Stuff that matters.
Re:Key Git Concepts Explained the Hard Way by stouset on Wednesday March 14, 2018 @07:30PM (#16589308)
> in git, for example, why can’t i switch branches with uncommitted changes? it makes no sense why i can’t do that, but yet, there it is.

Except you can?

    [stouset:~/Development/some-project] some-branch(+8/-4)+ $ git status
    On branch some-branch
    Your branch is up to date with 'origin/some-branch'.

    Changes not staged for commit:
      (use "git add <file>..." to update what will be committed)
      (use "git checkout -- <file>..." to discard changes in working directory)
    
    	modified:   path/to/file1
    	modified:   path/to/file2

    no changes added to commit (use "git add" and/or "git commit -a")
    [stouset:~/Development/some-project] some-branch(+8/-4)+ $  git checkout master
    M	path/to/file1
    M	path/to/file2
    Switched to branch 'master'
    Your branch is up to date with 'origin/master'.
> i don’t think the reasons have much to do with usability or even capability. i came to git from perforce, where the latter was much easier to use, reason about, fix issues, and has much better tooling, in particular visual tools. it’s also amazing how slow git is.

Perforce isn't free. git's popular predecessors were.

That said, I've found in my experience that way more people seem to hate Perforce than seem to hate git.

Re:Key Git Concepts Explained the Hard Way by three14 on Thursday March 15, 2018 @12:21PM (#16594180)
You only can switch like that sometimes, and it would have been more intuitive if there was an implicit per-branch stash and stash pop when switching branches, which would always let you switch.

See https://stackoverflow.com/questions/22053757/checkout-anothe...

Re:Key Git Concepts Explained the Hard Way by seanmcdirmid on Thursday March 15, 2018 @07:15AM (#16591800)
Git’s direct predecessor, bitkeeper, wasn’t free.