[darcs-users] Help understanding the push with conflicts message

Dan Pascu dan at ag-projects.com
Fri Apr 10 04:55:57 UTC 2009


On Thursday 09 April 2009, Ashley Moran wrote:
> On 9 Apr 2009, at 14:36, Eric Kow wrote:
> > I think the conclusion was that I would (somewhat reluctantly) accept
> > patches for darcs push --mark-conflicts and darcs push --allow-
> > conflicts
> > being options.
>
> Thanks for the link.  Sorry for not searching the archives.
>
> How about making `darcs push --mark-conflicts` and `darcs push --allow-
> conflicts` only work on local repositories?  That way the workflow

I think such a distinction is unnecessary and confusing from a user 
interface perspective. The only difference is how you get to the 
repository you try to push to. In one case is direct file access the 
other is over ssh. I fail to see why one needs to behave differently.
Not to mention that this can lead people to use hacks like mounting a 
remote filesystem with sshfs just to make it look like a local repository 
and be able to use --mark-conflicts.

IMO, if darcs is to provide this feature for expert users, it should not 
obfuscate it like this. It's either not available, or is available, not 
half available.

> would be:
>
> % cd repo-with-conflict # originally from me at server:repo
> % darcs get me at server:repo ../repo-merge
> % darcs push --mark-conflicts ../repo-merge
> % cd ../repo-merge
> ### fix conflict ###
> % cd ../repo-with-conflict
> % darcs pull
> % darcs push me at server:repo
>
> WDYT?
>
> As a second thought, this makes me also wonder if there'd be benefit
> in being able to:
>
> % darcs push --last-remote

Remote is a very abstract notion. One may view as remote any repository 
other than the one he is working it, even if it's on the same filesystem.
What of repositories that are accessed not over ssh, but over a network 
filesystem, like NFS or sshfs. Are they local or remote?

>
> which would make:
>
> % darcs push --mark-conflicts ../repo-merge
> % darcs push --last-remote

I'd suggest you use bash completion for this. Tab will complete repository 
names as well so it's even easier than to type --last-remote as you only 
need to press 1-2 letters from the repo name and then tab.

>
> equivalent to:
> % darcs push --mark-conflicts ../repo-merge
> % darcs push me at server:repo
>
> (I have been in the habit of doing `darcs get` locally as much as
> possible to avoid changing the remote repository.)
>
> WDYT?
>
> Ashley



-- 
Dan


More information about the darcs-users mailing list