News for hackers. Stuff that matters.
Re:A Git catastrophe cleaned up by justinlaster on Wednesday December 21, 2016 @03:36PM (#13232415)
I'm sorry, in what practice are you in where your commit messages are somehow so lackluster that a branch name (not even a PR!) can give you more information about why something is being done?

And to make sure no one responds with some silly "just because you don't have a use for it, doesn't mean don't have their uses for it": I get what you're trying to say. I'm really just not buying it as an actual use case. If your commit message isn't sufficient enough to explain the purpose of the commit (ticket numbers, explanation, etc), it doesn't get approved. If you're relying on a <20 character branch name to give you sufficient context about a commit a year later, I simply have no words.

>which I think a mercurial-style branch name answers.

I find that extremely suspect.

Re:A Git catastrophe cleaned up by zck on Wednesday December 21, 2016 @03:48PM (#13232497)
> If your commit message isn't sufficient enough to explain the purpose of the commit (ticket numbers, explanation, etc), it doesn't get approved.

I'm glad this is the case where you work and develop. I have never worked at a company where this is the case. I'm also not perfect about commit messages in my personal code. The codebase I'm currently working on has recent commits with description "review", "add addressDto" and "post rebase fix".

> >which I think a mercurial-style branch name answers.

> I find that extremely suspect.

Ok. If I see "add addressDto" as a part of the branch "google-geocoding", that tells me the context. If I see it as part of "refactor-to-use-hibernate", that also tells me something useful.

Re:A Git catastrophe cleaned up by justinlaster on Wednesday December 21, 2016 @07:07PM (#13233748)
>The codebase I'm currently working on has recent commits with description "review", "add addressDto" and "post rebase fix".

I guess what I don't get, is that if you have people doing commit messages like that, how can you possibly expect them to appropriately name a branch which most likely stores far less characters.

Re:A Git catastrophe cleaned up by aidenn0 on Thursday December 22, 2016 @03:14AM (#13235763)
Far too often the commit message says "what" while the branch name says "why."

Just recently I had to triage a recently discovered bug whose symptoms disappeared about 4 years ago to determine if the bug was fixed or just masked. This was code that I was completely unfamiliar with because the other engineers that might have looked at it were otherwise indisposed working on things that were known for sure to be issues.

The "what" told me the specific change that masked the bug and the "why" informed me of the feature that this supported. That allowed me to generate a new test-case that showed up in the current version. Without both pieces of information I would likely have had to spend a couple of hours inspecting code changes to do the same.

Re:A Git catastrophe cleaned up by justinlaster on Wednesday January 04, 2017 @11:54PM (#13324863)
If you can't trust your developers to write acceptable commit messages, why are you trusting them to write code?
Re:A Git catastrophe cleaned up by zck on Wednesday December 21, 2016 @08:26PM (#13234075)
Because you're less in the nitty-gritty when naming a branch, so you're more likely to name it with something referencing the large feature you're working on.
Re:A Git catastrophe cleaned up by aidenn0 on Thursday December 22, 2016 @03:02AM (#13235723)
I work with two codebases with over 200k commits and over 10k branches each. Sometimes the branch names are useless. Sometimes the commit messages are poor. Often knowing one helps provide more context for the other.

Believe it or not, there were times in the last 20 years when there was insufficient review of commit messages!

Re:A Git catastrophe cleaned up by 1wd on Wednesday December 21, 2016 @07:21PM (#13233808)
It's sometimes very useful, but not that often. It's not great for short lived feature branches. It's for long-term branches. If you don't need those (and most often you do not): great, your life is (relatively) simple; don't over-complicate it. You don't buy the use-case, because the situation is not that common or desirable. But once you get in a situation where you really do need multiple long-term branches developed in parallel, you might be happy to have a tool that helps untangle the web of merges somewhat.
Re:A Git catastrophe cleaned up by justinlaster on Wednesday December 21, 2016 @09:10PM (#13234228)
>It's for long-term branches.

Please elaborate how this helps you in long-term branches, instead of just assuming long-term branches aren't something most people deal with on a daily basis.

>you might be happy to have a tool that helps untangle the web of merges somewhat.

This has no relation to long-term branches, this happens with any kind of normal history, and even shared history between repositories (which is a far messier thing to untangle). Yet this feature is unneeded, because the information can be correctly found within git in an accurate and not misleading fashion.