git本地项目同时推送提交到github和gitee同步(十四)

一、git本地项目同时推送提交到github和gitee同步

同时推送到GitHub和Gitee(码云)可以通过设置多个远程仓库地址来实现。具体步骤如下:

1、分别推送

# 初始化仓库
git init

# 添加远程仓库
git remote add gitee git@gitee.com:bealei/test.git

git remote add github git@github.com:bealei/test.git


# 查看仓库
git remote -v


# 删除远程仓库
git remote rm gitee
git remote rm github

# 拉取代码到本地
git pull gitee-typora-theme-bealei master

# 查看文件状态
git status


# 工作区所有新增或修改的文件全部提交到暂存区。
git add .


# 提交暂存区到本地仓库
git commit -m "Initial commit"

# 本地仓库推送到远程仓库
git push gitee 
git push github

第一次推送仓库 加-u

git push -u gitee
git push -u github

添加分支分别推送会报错

git push -u gitee master
git push -u github main

2、一键推送

# 初始化仓库
git init

# 添加远程仓库
git remote add gitee git@gitee.com:bealei/test.git

git remote add github git@github.com:bealei/test.git


# 查看仓库
git remote -v

修改.git/config配置文件

[core]
    repositoryformatversion = 0
    filemode = false
    bare = false
    logallrefupdates = true
    symlinks = false
    ignorecase = true
[remote "gitee"]
    url = git@gitee.com:bealei/test.git
    fetch = +refs/heads/*:refs/remotes/gitee/*
[remote "github"]
    url = git@github.com:bealei/test.git
    fetch = +refs/heads/*:refs/remotes/github/*
[branch "master"]
    remote = github
    merge = refs/heads/master

新配置文件

[core]
    repositoryformatversion = 0
    filemode = false
    bare = false
    logallrefupdates = true
    symlinks = false
    ignorecase = true
[remote "origin"]
    url = git@gitee.com:bealei/test.git
    url = git@github.com:bealei/test.git
    fetch = +refs/heads/*:refs/remotes/origin/*

[branch "master"]
    remote = origin
    merge = refs/heads/master

开始推送

# 查看仓库
git remote -v


# 工作区所有新增或修改的文件全部提交到暂存区。
git add .


# 提交暂存区到本地仓库
git commit -m "Initial commit"


# 本地仓库推送到远程仓库
git push origin 

3、自定义Git别名

你也可以通过设置一个Git别名来实现这一点,只需运行以下命令:

git config --global alias.pushall '!git push gitee && git push github'

之后,使用 git pushall [分支名] 可以实现同时推送。

git pushall

参看链接:https://blog.csdn.net/bealei/article/details/134169980

二、通过ssh-keys的方式

在同一台计算机上同时配置gitee和码云(两个不同的git仓库平台),你需要做的是为每个平台设置SSH keys,并将这些keys添加到对应的git仓库平台。以下是简化的步骤:

1、 生成SSH keys:打开终端(在Windows上是Git Bash或者命令提示符),输入以下命令生成新的SSH keys:

ssh-keygen -t rsa -C "your_email@example.com"

按照提示完成密钥生成,默认情况下,这会在~/.ssh目录下创建两个文件:id_rsa(私钥)和id_rsa.pub(公钥)。

2、添加SSH keys到各自平台:

将~/.ssh/id_rsa.pub文件中的内容(公钥)添加到gitee和码云的SSH keys设置中。

3、配置SSH config 文件:

打开~/.ssh/config文件(如果不存在,则新建),为每个平台设置不同的配置段,例如:

# gitee
Host gitee.com
  HostName gitee.com
  User git
  IdentityFile ~/.ssh/id_rsa_gitee
 
# 码云
Host github.com
  HostName github.com
  User git
  IdentityFile ~/.ssh/id_rsa_github

4、测试SSH连接:

ssh -T git@gitee.com
ssh -T git@github.com

如果你看到欢迎消息,则说明SSH设置成功。

5、在仓库中使用SSH keys:你克隆或者推送到对应的平台仓库时,使用SSH格式的URL,例如:

git clone git@gitee.com:username/repo.git
git push git@github.com:username/repo.git

确保替换上述命令中的usernamerepo为你自己的gitee或码云用户名和仓库名。

如链接:https://www.cnblogs.com/szrs/p/15315347.html

posted @ 2024-06-20 10:14  慎终若始  阅读(5)  评论(0编辑  收藏  举报