Is it true in Mercurial (hg), the same as Git, that a revision you committed may only have code not modified by you? (a merge)?

The merge will be committed by whoever does it. But you can bisect the tree and then blame the person that caused the issue. Also if you have idea's of a couple of people who are responsible you should tell them to look at it.

If you wrote your tests right they should be giving you some idea of what is wrong where. If their features can't be resolved to both work then you'll have to be diplomatic and make some decisions.

I don't quite understand what you are asking about. When you are joining two lines of development (doing a merge), you will be creating a merge commit, i.e. Revision representing this act of joining two lines of history.In Git and Mercurial such commit remembers both parents; in Subversion such revision remembers both revisions for all files (if I understand it correctly).

In most cases the merge commit would be created automatically; in Git (and I think also in Mercurial) using 3-way merge, where the 3rd point (besides tips of both merged lines of development / branches) is common ancestor. Subversion only lately (since version 1.5, if I remember it correctly) store information required to calculate merge base (without using third party tools such as SVK or svnmerge). Note that as far as I understand Subversion merges files, while both Git and Mercurial merges revisions as whole.

Sometimes automated merge fails, and you have to resolve conflicts manually, and then commit finishing a merge. This is something that might happen in any version control system. Independent on whether automated merge succeded or failed, the act of merging itself (the merge commit in Git and Mercurial) might introduce bugs.

Take for example situation where one side changes calling convention for some function, and the other side adds another call site with old API. Automatic merge might succeed, but the merge will introduce error, even though both lines of development are error-free. Nevertheless git bisect can find that it was merge commit (act of merging) that introduced bug.

I think in those system, a merge is not a separate commit. – å‹•é? Œèƒ½é‡?

Aug 3 '10 at 19:24 In those version control systems (CVS and Subversion prior to version 1.5) merge was a separate revision, but it didn't remember that it was a merge, i.e. That it came from merging two lines of development (e.g. Cvs update -j ... -j ... creates a commit, IIRC). – Jakub NarÄ™bski Aug 3 '10 at 20:15.

I cant really gove you an answer,but what I can give you is a way to a solution, that is you have to find the anglde that you relate to or peaks your interest. A good paper is one that people get drawn into because it reaches them ln some way.As for me WW11 to me, I think of the holocaust and the effect it had on the survivors, their families and those who stood by and did nothing until it was too late.

Related Questions