GNU bug report logs - #51964
29.0.50; Wishlist: It'd be nice with a pull+push command in vc-dir

Previous Next

Package: emacs;

Reported by: Lars Ingebrigtsen <larsi <at> gnus.org>

Date: Fri, 19 Nov 2021 07:01:02 UTC

Severity: wishlist

Found in version 29.0.50

Fixed in version 29.1

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 51964 in the body.
You can then email your comments to 51964 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#51964; Package emacs. (Fri, 19 Nov 2021 07:01:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Lars Ingebrigtsen <larsi <at> gnus.org>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Fri, 19 Nov 2021 07:01:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: bug-gnu-emacs <at> gnu.org
Subject: 29.0.50; Wishlist: It'd be nice with a pull+push command in vc-dir
Date: Fri, 19 Nov 2021 07:59:53 +0100
`+' and `P' in vc-dir-mode are nice, but it means that I have to wait
until `+' is done first.  So what I want is a command that does the
pull, and if there's no conflicts, then do the push.

It seems like this shouldn't be too difficult -- vc-exec-after should be
able to do this somehow.

Or perhaps more generally -- vc-git-pull could have a callback function
that's called after it's done, and it could be called with the status
(success or not) as a parameter?  Then people could write their own
functions to react to the aftermath of a pull.


In GNU Emacs 29.0.50 (build 17, x86_64-pc-linux-gnu, GTK+ Version 3.24.30, cairo version 1.16.0)
 of 2021-11-18 built on xo
Repository revision: 7a1e5ac8b29b731e89cc9d5b498e31bd90840b9b
Repository branch: master
Windowing system distributor 'The X.Org Foundation', version 11.0.12011000
System Description: Debian GNU/Linux bookworm/sid


-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no





Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51964; Package emacs. (Fri, 19 Nov 2021 08:40:05 GMT) Full text and rfc822 format available.

Message #8 received at 51964 <at> debbugs.gnu.org (full text, mbox):

From: Juri Linkov <juri <at> linkov.net>
To: Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: 51964 <at> debbugs.gnu.org
Subject: Re: bug#51964: 29.0.50; Wishlist: It'd be nice with a pull+push
 command in vc-dir
Date: Fri, 19 Nov 2021 10:28:41 +0200
> `+' and `P' in vc-dir-mode are nice, but it means that I have to wait
> until `+' is done first.  So what I want is a command that does the
> pull, and if there's no conflicts, then do the push.
>
> It seems like this shouldn't be too difficult -- vc-exec-after should be
> able to do this somehow.
>
> Or perhaps more generally -- vc-git-pull could have a callback function
> that's called after it's done, and it could be called with the status
> (success or not) as a parameter?  Then people could write their own
> functions to react to the aftermath of a pull.

Shouldn't the pull+push command be customizable to allow "git pull --rebase",
especially useful in this workflow?




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51964; Package emacs. (Fri, 19 Nov 2021 08:44:02 GMT) Full text and rfc822 format available.

Message #11 received at 51964 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: Juri Linkov <juri <at> linkov.net>
Cc: larsi <at> gnus.org, 51964 <at> debbugs.gnu.org
Subject: Re: bug#51964: 29.0.50;
 Wishlist: It'd be nice with a pull+push command in vc-dir
Date: Fri, 19 Nov 2021 10:42:56 +0200
> From: Juri Linkov <juri <at> linkov.net>
> Date: Fri, 19 Nov 2021 10:28:41 +0200
> Cc: 51964 <at> debbugs.gnu.org
> 
> > Or perhaps more generally -- vc-git-pull could have a callback function
> > that's called after it's done, and it could be called with the status
> > (success or not) as a parameter?  Then people could write their own
> > functions to react to the aftermath of a pull.
> 
> Shouldn't the pull+push command be customizable to allow "git pull --rebase",
> especially useful in this workflow?

I think we should have a user option saying whether merge-based or
rebase-based workflow is preferred, because this affects (or
could/should affect) quite a few defaults, at least with Git.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51964; Package emacs. (Fri, 19 Nov 2021 10:21:01 GMT) Full text and rfc822 format available.

Message #14 received at 51964 <at> debbugs.gnu.org (full text, mbox):

From: Andreas Schwab <schwab <at> linux-m68k.org>
To: Juri Linkov <juri <at> linkov.net>
Cc: Lars Ingebrigtsen <larsi <at> gnus.org>, 51964 <at> debbugs.gnu.org
Subject: Re: bug#51964: 29.0.50; Wishlist: It'd be nice with a pull+push
 command in vc-dir
Date: Fri, 19 Nov 2021 11:20:41 +0100
On Nov 19 2021, Juri Linkov wrote:

> Shouldn't the pull+push command be customizable to allow "git pull --rebase",
> especially useful in this workflow?

You can also customize that per repository with git config.

Andreas.

-- 
Andreas Schwab, schwab <at> linux-m68k.org
GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510  2552 DF73 E780 A9DA AEC1
"And now for something completely different."




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51964; Package emacs. (Sat, 20 Nov 2021 08:31:01 GMT) Full text and rfc822 format available.

Message #17 received at 51964 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Juri Linkov <juri <at> linkov.net>
Cc: 51964 <at> debbugs.gnu.org
Subject: Re: bug#51964: 29.0.50; Wishlist: It'd be nice with a pull+push
 command in vc-dir
Date: Sat, 20 Nov 2021 09:30:34 +0100
Juri Linkov <juri <at> linkov.net> writes:

> Shouldn't the pull+push command be customizable to allow "git pull --rebase",
> especially useful in this workflow?

This command is certainly even more useful if you're using rebasing, but
I think people customise that in their git setups, so I think it would
probably be superfluous. 

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51964; Package emacs. (Sat, 24 Sep 2022 13:18:02 GMT) Full text and rfc822 format available.

Message #20 received at 51964 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: 51964 <at> debbugs.gnu.org
Subject: Re: bug#51964: 29.0.50; Wishlist: It'd be nice with a pull+push
 command in vc-dir
Date: Sat, 24 Sep 2022 15:17:43 +0200
Lars Ingebrigtsen <larsi <at> gnus.org> writes:

> `+' and `P' in vc-dir-mode are nice, but it means that I have to wait
> until `+' is done first.  So what I want is a command that does the
> pull, and if there's no conflicts, then do the push.
>
> It seems like this shouldn't be too difficult -- vc-exec-after should be
> able to do this somehow.

I've now done this in Emacs 29.




bug marked as fixed in version 29.1, send any further explanations to 51964 <at> debbugs.gnu.org and Lars Ingebrigtsen <larsi <at> gnus.org> Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Sat, 24 Sep 2022 13:18:02 GMT) Full text and rfc822 format available.

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51964; Package emacs. (Sat, 24 Sep 2022 18:09:02 GMT) Full text and rfc822 format available.

Message #25 received at 51964 <at> debbugs.gnu.org (full text, mbox):

From: Juri Linkov <juri <at> linkov.net>
To: Lars Ingebrigtsen <larsi <at> gnus.org>
Cc: 51964 <at> debbugs.gnu.org
Subject: Re: bug#51964: 29.0.50; Wishlist: It'd be nice with a pull+push
 command in vc-dir
Date: Sat, 24 Sep 2022 20:36:37 +0300
>> `+' and `P' in vc-dir-mode are nice, but it means that I have to wait
>> until `+' is done first.  So what I want is a command that does the
>> pull, and if there's no conflicts, then do the push.
>>
>> It seems like this shouldn't be too difficult -- vc-exec-after should be
>> able to do this somehow.
>
> I've now done this in Emacs 29.

I wonder why this couldn't be implemented by using the existing backend
functions 'pull' and 'push'?  Then the only thing required for a backend
to support 'vc-pull-and-push' is just to return a process from the
backend function 'pull'.  IOW, I don't see a problem of moving
the logic of vc-git-pull-and-push to vc-pull-and-push.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#51964; Package emacs. (Sat, 24 Sep 2022 18:31:02 GMT) Full text and rfc822 format available.

Message #28 received at 51964 <at> debbugs.gnu.org (full text, mbox):

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Juri Linkov <juri <at> linkov.net>
Cc: 51964 <at> debbugs.gnu.org
Subject: Re: bug#51964: 29.0.50; Wishlist: It'd be nice with a pull+push
 command in vc-dir
Date: Sat, 24 Sep 2022 20:30:00 +0200
Juri Linkov <juri <at> linkov.net> writes:

> I wonder why this couldn't be implemented by using the existing backend
> functions 'pull' and 'push'?  Then the only thing required for a backend
> to support 'vc-pull-and-push' is just to return a process from the
> backend function 'pull'.  IOW, I don't see a problem of moving
> the logic of vc-git-pull-and-push to vc-pull-and-push.

That may well be possible -- I just don't know whether all the backends
(that have -pull/-push) would be amenable to that.

But I see there's only two of them bzr and hg, and looking at those
briefly, it does indeed look like the implementation could be lifted up
to vc-pull-and-push.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Sun, 23 Oct 2022 11:24:10 GMT) Full text and rfc822 format available.

This bug report was last modified 1 year and 178 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.