gitui-org/gitui

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

Open

#1.306 aberto em 31 de ago. de 2022

Ver no GitHub
 (7 comments) (0 reactions) (0 assignees)Rust (721 forks)batch import
bughelp wanted

Métricas do repositório

Stars
 (21.937 stars)
Métricas de merge de PR
 (Mesclagem média 41d 9h) (6 fundiu PRs em 30d)

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)

Guia do colaborador