From: gapon <gapon007@gmail.com>
To: Jakub Narebski <jnareb@gmail.com>
Cc: Benoit Sigoure <tsuna@lrde.epita.fr>, git@vger.kernel.org
Subject: Re: git bug/feature request
Date: Tue, 27 Nov 2007 15:06:14 +0100 [thread overview]
Message-ID: <200711271506.14980.gapon007@gmail.com> (raw)
In-Reply-To: <200711271431.21516.jnareb@gmail.com>
Dne úterý 27 listopadu 2007 Jakub Narebski napsal(a):
> Dnia wtorek 27. listopada 2007, gapon napisał(a):
> > Dne úterý 27 listopadu 2007 Jakub Narebski napsal(a):
> >> gapon wrote:
> >>> bzr:
> >>> while pushing, bzr tries to merge into the current working copy (of A)
> >>> -> all changes are applied or conflicts occure
> >>
> >> That's wrong, wrong, WRONG! What to do in the case of conflicts?
> >> Whan you pull, you can resolve them, as they are on your local side,
> >> but when you push you cannot do that.
> >
> > i agree - i didn't say that it's correct behaviour - i just said that i
> > like it more than git's one
>
> I think it is just wrong and it is hardly any other be worse.
> By the way, don't current git _refuse_ to update checked out branch?
what do you mean exactly? i will try it
>
> >>> hg:
> >>> while pushing, neither merge nor info message, but new head (branch) is
> >>> created in repo A - so then in A you can commit your changes but it's
> >>> different head (repo A has more heads, use hg heads to list them)
>
> [...]
>
> >> You can do the same with git, but you have to specify new branch name
> >> in repo A, or just configure remote in repo B.
> >
> > how can i do it in repo A? i know how to configure repo B but i didn't
> > know that i can do it for repo B (or better for all "B" repos)
>
> git-clone sets up repo B (the clone) for one direction of transfer,
> from repo A (cloned repo) to repo B (the clone). If you want to push
> to repo A, you should configure repo B to do so.
>
> See also comments below.
>
> >> BTW. how do you want for user A (which might be not at terminal, or
> >> might be not logged in, or might use some application using terminal, or
> >> might use multiple [virtual] terminals, or...) to be informed?
> >
> > quite easily i would say - while doing git status or git commit or so -
> > it doesn't matter if one uses terminal or gui - just let user know that
> > something has changed in his repo
>
> There was an idea, and even preliminary implementation in 'pu' branch
> (proposed updates) to have BASE extension in the index (or in refs,
> I don't remember exactly: search the archives), and check when committing
> if for example push didn't change the repository, didin't advance current
> checked out branch under our feet so to say. This allowed for the behavior
> you want.
>
> It was abandoned, for the following reasons as far as I know.
>
> First, there are legitimate situations, created by current user, where
> branch (HEAD) changes: reset, amend, checkout -m, etc. It would be hard
> to avoid annoing false positives (false alarms).
>
> Second, it was complicated to do correctly, as it affected quite a bit
> of git codebase.
>
> Third, it encourages a wrong (CVS braindamage inspired) workflow. The last
> thing you want when committing changes is to have to resolve some
> conflicts, and/or check if [automatic] conflict resolution is correct.
> Blind merging is a bad, bad idea.
>
> > as i wrote earlier - it's confusing (at least for me) that git marks any
> > files as changed (i haven't changed any file) and more, it adds them to
> > the index
>
> You are welcome to ressurect BASE extension to index file :-)
jakub, thanks for explanation - now it's clear that it's not easy to handle
such case... unfortunately
next prev parent reply other threads:[~2007-11-27 14:06 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-11-27 10:27 git bug/feature request gapon
2007-11-27 10:57 ` Benoit Sigoure
2007-11-27 11:16 ` gapon
2007-11-27 11:51 ` Jakub Narebski
2007-11-27 12:50 ` gapon
2007-11-27 13:31 ` Jakub Narebski
2007-11-27 13:38 ` Jakub Narebski
2007-11-27 14:06 ` gapon [this message]
2007-11-27 11:21 ` Alex Riesen
2007-11-27 11:31 ` gapon
2007-11-27 13:03 ` Alex Riesen
2007-11-27 13:45 ` gapon
2007-11-27 16:36 ` Alex Riesen
2007-11-27 11:30 ` Jakub Narebski
2007-11-30 18:21 ` Jan Hudec
2007-11-27 14:35 ` Peter Karlsson
2007-11-27 14:38 ` David Kastrup
2007-11-28 13:30 ` Peter Karlsson
2007-11-27 15:13 ` Jakub Narebski
2007-11-27 19:49 ` Steven Grimm
2007-11-27 20:19 ` Daniel Barkalow
2007-11-27 20:34 ` Daniel Barkalow
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=200711271506.14980.gapon007@gmail.com \
--to=gapon007@gmail.com \
--cc=git@vger.kernel.org \
--cc=jnareb@gmail.com \
--cc=tsuna@lrde.epita.fr \
/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.