如何同时提交到多个存储库,并根据每个存储库设置使用单独的提交用户名

问题描述 投票:0回答:1

Windows git https方式如何实现同时推送到多个仓库,并根据每个仓库设置单独的提交用户名

[remote "github"]
    url = https://github.com/jock/test
    fetch = +refs/heads/*:refs/remotes/origin/*
    
[remote "gitlab"]
    url = https://gitlab.com/test
    fetch = +refs/heads/*:refs/remotes/origin/*|

如何为github gitlab设置各自的提交用户名

github :github-username

gitlab: gilab-username
git github gitlab certificate
1个回答
0
投票

如果您只需要更改别名,请尝试以下步骤。几年前我尝试过不同的版本,希望有效。

  1. 设置多个遥控器(可能,你已经有了这些)
[remote "github"]
    url = https://github.com/jock/test
    fetch = +refs/heads/*:refs/remotes/github/*
        
[remote "gitlab"]
    url = https://gitlab.com/test
    fetch = +refs/heads/*:refs/remotes/gitlab/*
  1. 在存储库的“.git/hooks”目录中创建一个文件
touch .git/hooks/pre-push
chmod +x .git/hooks/pre-push
  • a.编辑文件如下
#!/bin/sh

remote="$1"

if [ "$remote" = "github" ]; then
    git config user.name "github-username"
    git config user.email "[email protected]"
elif [ "$remote" = "gitlab" ]; then
    git config user.name "gitlab-username"
    git config user.email "[email protected]"
fi
  • b.按下每个遥控器
git push github
git push gitlab
  1. 此外,自动推送 git 文件夹中的所有遥控器
    [alias]
        multipush = "!f() { git push github && git push gitlab; }; f"
  1. 使用它
    git multipush
© www.soinside.com 2019 - 2024. All rights reserved.