I need help with version control software.

Started by
3 comments, last by nhold 11 years, 6 months ago
Oh jeeze...
My partner and I have had problems properly operating the whole version control stuff. He is a bit more familiar than I am, yet I/we still have issues. I'll just handle my current predicament, see if you all can tell me how to fix my mess-ups, and how to avoid it in the first place.

So we have our own tasks we're working on of course. We are using Mercurial via TortoiseHG to connect with our BitBucket account. Starting from the same point, he commits one change to BitBucket, and then another. I get done with my work, locally commit my changes, and ask THG to pull down changes.
I end up with two lines in my THG graph now, my line and his(diverging from the last common version) which has two nodes on it.. I try to merge, but I just end up creating a spiderweb of red and blue. (It's late, I'm ignorant and frustrated, and at times like that my usual solution to square peg-round hole is a mallet. ...Not good, just saying....)

Why did this not do what I was expecting--namely, combine his changes with mine? How should I/we proceed in the future to avoid this? Is there an option I should have set to avoid this?

grrr....later I'll ask how I can fix it....
Here is my technical background info.
Advertisement
I hate using mercurial, and tortoise hg just plain sucks. I much prefer to use SVN.

But anyways. Get both changesets and manually merge the changes! I believe you have merged automatically the changes?

Why did this not do what I was expecting--namely, combine his changes with mine? How should I/we proceed in the future to avoid this? Is there an option I should have set to avoid this?
grrr....later I'll ask how I can fix it....


I see this time and time again from beginner coders and lead coders alike. You don't want to and usually can't avoid merge conflicts and it isn't really that much of a big deal if you get them anyway.

To do a merge I go through this process:

  1. Check my files (Or hunks) for changes not needed or unintended changes and reset them
  2. Pull and merge
  3. Fix any conflicts using a diff tool. (SourceTree on Mac shows differences and I just use that + monodevelop) I don't have a recommended for Windows
  4. Commit \ push merge

Conflicts are not errors!

Engineering Manager at Deloitte Australia

So, when I pull down my partner's changes after locally commiting my own work, should I expect to see divergent heads/lines? This is normal, or did I miss something?
(I guess I don't understand the logic of not merging it with my own...I have finished/committed my work, why in the world would I want to ignore it?)

Here's another question: Is it a problem to have divergent lines "earlier" in the lineage, even red ones, if they all come together to one head at the top?
Here is my technical background info.

So, when I pull down my partner's changes after locally commiting my own work, should I expect to see divergent heads/lines? This is normal, or did I miss something?
(I guess I don't understand the logic of not merging it with my own...I have finished/committed my work, why in the world would I want to ignore it?)

Here's another question: Is it a problem to have divergent lines "earlier" in the lineage, even red ones, if they all come together to one head at the top?


Yes that's fine. You will merge it with your own, I never said that but I did say that when you do merge it and a conflict happens you just use a diff tool (google is your friend) to help you fix them.

No that is not a problem. 'Divergent lines' or branches at all are not a problem they are the solution.

You should read here:
http://mercurial.selenic.com/wiki/Branch

Engineering Manager at Deloitte Australia

This topic is closed to new replies.

Advertisement