GitHub仓库快速导入Gitee及同步更新

一、仓库导入

登陆 Gitee 账号,点击右上角的 + 号,点击「从 GitHub 导入仓库」,在跳转的页面中授权 Gitee 访问。

与 GitHub 对接。

选择性的导入您的 Github 项目到 Gitee

  • 如果是开源的仓库,直接点击创建即可,导入完成即进入相应 Gitee 的仓库页面(导入速度可能会因仓库大小、网络状况而有所差异,请耐心等待)

  • 如果是私有仓库,需要登录有权限操作该仓库的 GitHub 账号进行授权,授权后结果同上

二、Gitee 和 Github 同步更新

方法一(推荐):比较少分支的仓库

如果是本地仓库,只在需要命令行添加用不同名称标识的 Gitee  和 Github 远程库。

git remote add 远程库名 远程库地址

具体方法操作如下:

1、首先通过 git remote -v 查看您要同步的仓库的远程库列表,如果在列表中没有您 Gitee 的远程库地址,您需要新增一个地址

git remote add 远程库名 远程库地址
eg: git remote add gitee git@github.com:xxx/xxx.git

如果在 add 的时候出现error: Could not remove config section 'remote.xxx'.一类的错误,通过把仓库下.git/config 文件里面的 [remote "xxx"] 删掉或者是用别的远程库名即可。

2、从 GitHub 上拉取最新代码到本地

git pull 远程库名 分支名
eg:git pull origin master

3、推送本地最新代码到 Gitee 上

git push 远程库名 分支名
eg:git push gitee master

如果出现有差异的话需要自己手动解决差异

方法二(推荐):比较多分支的仓库

1、克隆 GitHub 仓库到本地,命令如下

$ git clone git@github.com:xxx/xxx.git
# 进入仓库目录
$ cd xxx

2、一次性拉取该仓库的所有分支,命令如下:

$ for b in git branch -r | grep -v -- '->'; do git branch --track ${b##origin/} $b; done

命令简单解释:

  • | 表示通道,即前面命令的输出是后面命令的输入。

  • for xxx in xxxs; do xxx; done是shell的for循环语句。

  • 倒引号``表示里面的是命令。

  • git branch -r 列出远程分支。

  • grep -v – '->’ ,grep查找命令,-v 参数表示not grep ,即查找输入中的不含’->’ 的行。

  • git branch -r | grep -v – '->’ ,合起来就是参看远程分支中除了含有’->’ 的分支。

  • $b 表示远程分支名,例如:origin/dev。

  • ${b##origin/} 表示截取远程分支名中origin/后面的内容,例如:dev,以此当做本地分支。

  • git branch --track {b##origin/}" role="presentation" style="position: relative;">{b##origin/}{b##origin/}b,类似于方法1的git branch dev origin/dev,–track参数是默认的,不加亦可。

3、查看所有分支(包括本地和远程仓库分支)

git branch --all

4、推送本地仓库到 Gitee 上

方法三:比较多分支的仓库

在 Gitee 仓库主页点击同步更新按钮即可!

这里的同步功能默认是强制同步(新代码直接覆盖)


参考文章链接:

Gitee 官方博客:https://blog.gitee.com/2018/06/05/github_to_gitee/

(0)

相关推荐