3 ms·
As a developer that's actually something I love git for. In a big company with several tickets describing errors in the system, I can work on several issues at
by Shorel 12y ago
As a developer that's actually something I love git for. In a big company with several tickets describing errors in the system, I can work on several issues at the same time. Or explore different ideas and implementations.
Now, the issue with the compile and testing can be real, but I have an easy workaround.
I have another working copy/checkout of the repository, called <repository>-ro. I never edit files in the read only copy, unless it's to fix a merge conflict. All tests and merges are done in this other copy.
Any revision does eventually exists on disk, in this copy.
- rbehrends 12y agoYou don't need a staging area if you want to just commit selectively. No VCS that I know of will stop you from doing just that if you really want to. bzr/fossil/git/hg/mtn/svn commit path1 ... pathn will selectively commit only the listed files/directories (some of them will even allow you to commit individual hunks, as in "git add -p", if you like to live dangerously). The biggest problem with the staging area is that (1) it can happen accidentally that you forgot to "git add" a file or (2) it really only gives you any advantage over selective commits when you stage a non-trivial selection of files, which is exactly where things have a chance of going wrong.
- obsurveyor 12y agoWhat am I missing, just --amend the commit with the stuff you forgot? Also, with 'git add -i' you can stage individual hunks of a change instead of the whole change. This can be useful when you need to break up changes into multiple commits. I don't think you can 'git stash' your way out of that situation.