gitui-org/gitui

Doesn't appear to push to multiple remotes, unlike `git push`

Open

#1 306 ouverte le 31 août 2022

Voir sur GitHub
 (7 commentaires) (0 réactions) (0 assignés)Rust (721 forks)batch import
bughelp wanted

Métriques du dépôt

Stars
 (21 937 stars)
Métriques de merge PR
 (Merge moyen 41j 9h) (6 PRs mergées en 30 j)

Description

Describe the bug I have multiple git remotes, as described in https://seirdy.one/posts/2020/11/18/git-workflow-1/

The repo in question is https://git.sr.ht/~skyfaller/twentyeleven-skyfaller

My .git/config looks like this:

[core]
	repositoryformatversion = 0
	filemode = true
	bare = false
	logallrefupdates = true
[remote "origin"]
	url = git@git.sr.ht:~skyfaller/twentyeleven-skyfaller
	fetch = +refs/heads/*:refs/remotes/origin/*
	url = git@codeberg.org:skyfaller/twentyeleven-skyfaller.git
	url = git@github.com:skyfaller/twentyeleven-skyfaller.git
[branch "master"]
	remote = origin
	merge = refs/heads/master
[remote "gh_mirror"]
	url = git@github.com:skyfaller/twentyeleven-skyfaller.git
	fetch = +refs/heads/*:refs/remotes/gh_mirror/*
[remote "cb_mirror"]
	url = git@codeberg.org:skyfaller/twentyeleven-skyfaller.git
	fetch = +refs/heads/*:refs/remotes/cb_mirror/*

When I make changes to my git repo, and use gitui to Push [p], it only pushes to one remote, in this case GitHub / gh_mirror.

It appears it pushes to the remote which is listed last. This doesn't parallel git's behavior, git prioritizes the URL that is listed first when pulling:

> git pull origin -v
From git.sr.ht:~skyfaller/twentyeleven-skyfaller
 = [up to date]      master     -> origin/master
 = [up to date]      static     -> origin/static
Already up to date.

But since gitui should push to all of the URLs rather than picking one anyway, this isn't important.

When I use git push after using gitui to push, I see:

> git push
Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Delta compression using up to 8 threads
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 468 bytes | 468.00 KiB/s, done.
Total 3 (delta 2), reused 0 (delta 0), pack-reused 0
To git.sr.ht:~skyfaller/twentyeleven-skyfaller
   e714d73..0370dee  master -> master
Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Delta compression using up to 8 threads
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 468 bytes | 468.00 KiB/s, done.
Total 3 (delta 2), reused 0 (delta 0), pack-reused 0
remote: . Processing 1 references
remote: Processed 1 references in total
To codeberg.org:skyfaller/twentyeleven-skyfaller.git
   e714d73..0370dee  master -> master
Everything up-to-date

As you can see, git push is successfully pushing to the other remotes that gitui did not.

Expected behavior I expect the behavior of git push and gitui's "Push" function to be identical.

Context (please complete the following information):

  • OS/Distro + Version: Fedora Linux 36 (Workstation Edition) x86_64
  • GitUI Version: gitui 0.21.0 (installed from Linuxbrew)

Guide contributeur