天天看点

自动化将Gitee的仓库导入Github准备工作获取方式工具源码用法写在最后

自动化将Gitee的仓库导入Github

  • 准备工作
  • 获取方式
    • gitee的授权码
    • github授权码
  • 工具源码
  • 用法
    • 下载gitee所有仓库到本地
    • 下载并更新到github(自动创建仓库)
  • 写在最后

本方法能实现自动创建仓库

脚本及用法放在文章最后了,需要的自取

转跳到结尾

准备工作

  • python环境
    • 解释器(3.x)
    • requests库
  • gitee授权码
  • github access token

获取方式

gitee的授权码

自动化将Gitee的仓库导入Github准备工作获取方式工具源码用法写在最后

设置里,私人令牌

自动化将Gitee的仓库导入Github准备工作获取方式工具源码用法写在最后

生成一个,(我这里已经有了),把那一串类似hash的东西保存好(但目前为止没发现有啥用)

注意我们需要的不是这个令牌,而是下一步的。

点蓝色的Gitee Open API

自动化将Gitee的仓库导入Github准备工作获取方式工具源码用法写在最后

会有帮助文档界面,点申请授权,并且保持默认。

自动化将Gitee的仓库导入Github准备工作获取方式工具源码用法写在最后

同意之后会发现,原来的access_token字段填上了,这才是我们需要的授权码

自动化将Gitee的仓库导入Github准备工作获取方式工具源码用法写在最后

这个是会变动的,暂时保存就行了

github授权码

开steam++上github(特别快),登录之后访问下面网址

https://github.com/settings/apps

自动化将Gitee的仓库导入Github准备工作获取方式工具源码用法写在最后

(因为我已经申请了,所以有显示),红圈的下拉菜单选择下面那个(不带beta的)

自动化将Gitee的仓库导入Github准备工作获取方式工具源码用法写在最后

选项都勾上,时间随意选,没什么大不了,过期了就重新申请

自动化将Gitee的仓库导入Github准备工作获取方式工具源码用法写在最后

这个页面之后,把

ghp_

开头的复制下来保存好,当然也是暂时的(事实上你再也无法看见这串东西,所以要保存好)

带上ghp_的前缀,和后面的字母,构成github的授权码

工具源码

源码文件地址(gitee):[https://gitee.com/dtsroy/daily-script/blob/master/repo_mover/main.py](https://gitee.com/dtsroy/daily-script/blob/master/repo_mover/main.py)可以直接复制到本地使用 项目地址在 [Gitee](https://gitee.com/dtsroy/daily-script)或[GitHub](https://github.com/dtsroy/daily-script) 喜欢的话可以点个star(仓库里还有一些临时用过的手写工具,需要的话可以看看)

用法

当然,时间原因只支持单分支,叫

master

下载gitee所有仓库到本地

python main.py -d 你的gitee授权码
           

下载并更新到github(自动创建仓库)

python main.py -m 你的gitee授权码 你的github授权码
           

注意授权码别过期,并且运行工具前关闭一切代理软件(包括steam++)

注意授权码别过期,并且运行工具前关闭一切代理软件(包括steam++)

注意授权码别过期,并且运行工具前关闭一切代理软件(包括steam++)

否则证书认证不通过,或者连不上。

写在最后

阅读源码和相应的api文档可以发现,二者相似度极高,无非是post/get/delete/put等请求方法加以参数、请求头等信息,就能实现代码托管平台的自动化管理(用python很方便)