All of lore.kernel.org
 help / color / mirror / Atom feed
From: Junio C Hamano <gitster@pobox.com>
To: Jonathan Nieder <jrnieder@gmail.com>
Cc: Thomas Rast <trast@student.ethz.ch>,
	git@vger.kernel.org, Junio C Hamano <gitster@pobox.com>
Subject: Re: [PATCH v2 2/4] Documentation: warn prominently against merging with dirty trees
Date: Sat, 09 Jan 2010 22:31:36 -0800	[thread overview]
Message-ID: <7vskaefp2v.fsf@alter.siamese.dyndns.org> (raw)
In-Reply-To: 20100110044949.GA8974@progeny.tock

Jonathan Nieder <jrnieder@gmail.com> writes:

> |     1. Even if you may have local modifications in your working tree, you
> |     can safely say "git pull" when you know that the change in the other
> |     branch does not overlap with them.
> |     2. After inspecting the result of the merge, you may find that the
> |     change in the other branch is unsatisfactory. Running "git reset
> |     --hard ORIG_HEAD" will let you go back to where you were, but it will
> |     discard your local changes, which you do not want. "git reset --merge"
> |     keeps your local changes.
>
>> while possible, it leaves you in a state that is hard to
>> +back out of in the case of a conflict.
>> +
>
> Oh, that is a problem.  Maybe 'git merge' should refuse to merge
> unless told otherwise, if there is a dirty index and there might be
> conflicts.

"git reset --merge" will keep your local changes after such a merge, and
"mergy" operations (not just "merge" but also "revert", "am -3", etc)
won't get you into a situation where you cannot, by refusing to do
anything when e.g. your index is dirty.  Especially when Christian's
"reset --merge" update becomes solid, "... is hard to back out of" will
become a false statement.

Of course, the user needs to understand what he or she is doing (see
http://thread.gmane.org/gmane.comp.version-control.git/136166/focus=136171
for example).  And that is one reason we (at least I) try to teach new
people to start working from a clean tree, until they get comfortable
working with mergy operations.

  reply	other threads:[~2010-01-10  6:32 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-01-07 17:03 [PATCH 1/2] Documentation/git-merge: reword references to "remote" and "pull" Thomas Rast
2010-01-07 17:03 ` [PATCH 2/2] Documentation: warn prominently against merging with dirty trees Thomas Rast
2010-01-07 17:03 ` [NON-PATCH 3/2] Documentation/git-merge: format full commands in typewriter font Thomas Rast
2010-01-07 20:25   ` Jonathan Nieder
2010-01-07 21:08   ` Junio C Hamano
2010-01-07 18:01 ` [PATCH 1/2] Documentation/git-merge: reword references to "remote" and "pull" Junio C Hamano
2010-01-10  0:02   ` [PATCH v2 0/4] Documentation style fixes Thomas Rast
2010-01-10  0:02     ` [PATCH v2 1/4] Documentation/git-merge: reword references to "remote" and "pull" Thomas Rast
2010-01-10  4:13       ` Jonathan Nieder
2010-01-10 12:24         ` Thomas Rast
2010-01-23 22:48           ` [PATCH] Documentation: merge: use MERGE_HEAD to refer to the remote branch Jonathan Nieder
2010-01-10  0:02     ` [PATCH v2 2/4] Documentation: warn prominently against merging with dirty trees Thomas Rast
2010-01-10  4:49       ` Jonathan Nieder
2010-01-10  6:31         ` Junio C Hamano [this message]
2010-01-10 12:16           ` Thomas Rast
2010-01-11  2:13           ` Jonathan Nieder
2010-01-11  2:30             ` Junio C Hamano
2010-01-11  4:13               ` Jonathan Nieder
2010-01-11  8:21                 ` [PATCH 0/6] " Jonathan Nieder
2010-01-11  8:27                   ` [PATCH/RFC 1/6] Documentation: clarify one-line description for merge Jonathan Nieder
2010-01-11  8:30                   ` [PATCH 2/6] Documentation: merge: add an overview Jonathan Nieder
2010-01-11 10:09                     ` Junio C Hamano
2010-01-11  8:37                   ` [PATCH 4/6] Documentation: emphasize when git merge terminates early Jonathan Nieder
2010-01-11 23:11                     ` Thomas Rast
2010-01-11  8:39                   ` [PATCH 5/6] Documentation: merge: add a section about fast-forward Jonathan Nieder
2010-01-11  8:43                   ` [PATCH 6/6] Documentation: tweak How Merge Works Jonathan Nieder
2010-01-11 23:11                     ` Thomas Rast
2010-01-13 10:44                   ` [PATCH 0/6] Re: Documentation: warn prominently against merging with dirty trees Petr Baudis
2010-01-13  6:55                 ` [PATCH v2 2/4] " Junio C Hamano
2010-01-10  0:02     ` [PATCH v2 3/4] Documentation: format full commands in typewriter font Thomas Rast
2010-01-10  3:31       ` Jonathan Nieder
2010-01-10  0:07     ` [PATCH v2 0/4] Documentation style fixes Thomas Rast
2010-01-10  0:19       ` Thomas Rast
2010-01-10  6:34       ` Junio C Hamano
2010-01-10 12:10         ` Thomas Rast
2010-01-10 12:10           ` [PATCH 1/2] More missed dashed 'git-cmd' forms Thomas Rast
2010-01-10 12:10             ` [PATCH 2/2] More missed `code snippets` Thomas Rast
2010-01-10 12:11           ` [PATCH] Documentation: show-files is now called git-ls-files Thomas Rast
2010-01-18  1:18         ` [PATCH v2 0/4] Documentation style fixes Junio C Hamano
2010-01-19 17:29           ` Thomas Rast
2010-01-19 17:39             ` Jonathan Nieder
2010-01-10  7:12       ` Junio C Hamano
     [not found]     ` <9516c897017ec420403bb7f687fb8962de42cb7c.1263081032.git.trast@student.ethz.ch>
2010-01-10  2:56       ` [PATCH v2 4/4] Documentation: spell 'git cmd' without dash throughout Jonathan Nieder
2010-01-10  2:59         ` [PATCH 1/2] Documentation: git gc packs refs by default now Jonathan Nieder
2010-01-10  3:01         ` [PATCH 2/2] Documentation: tiny git config manual tweaks Jonathan Nieder
2010-01-10 12:21         ` [PATCH v2 4/4] Documentation: spell 'git cmd' without dash throughout Thomas Rast

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=7vskaefp2v.fsf@alter.siamese.dyndns.org \
    --to=gitster@pobox.com \
    --cc=git@vger.kernel.org \
    --cc=jrnieder@gmail.com \
    --cc=trast@student.ethz.ch \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.