最初发布于 melvinkoh.me
几年前,Bitbucket将其放在Github旁时大放异彩。 在Github提出Github Actions和免费的无限制私人仓库之前,Bitbucket已经做到了。 由于我是自由职业者,所以我的大部分回购协议都必须是私人的,而支付给我的选择较少,因此我决定使用Bitbucket。
但是,情况发生了很大变化。 Github现在更加全面,Bitbucket中仍缺少一些必要的功能,例如标记Git问题。
使用Bitbucket,我还得到了我的缺失投资组合,即贡献活动图。 我相信大多数人都认为这对于开发人员来说是至关重要的,尽管这并不能反映开发人员的真实工作。
> Arch Linux开发人员之一的贡献活动
使用Github,如果我的任何回购协议包含易受攻击的软件包,我都会收到安全通知。
>来自Github的安全警告
将Bitbucket存储库迁移到Github
由于很多原因,我决定将我的所有存储库从Bitbucket合并到Github。 当然,这附带了成本,我将在后面讨论。
怎么样?
我所期望的是我在Github中所有存储库的副本,然后我将不再使用Bitbucket作为origin
。
为此,我必须:
- 从Bitbucket克隆我的所有存储库
- 在Github中创建相同名称的存储库
- 将现有存储库的来源更新为Github URL。
如果您手动进行操作,这些操作似乎很乏味。 幸运的是,有人为此准备了一个脚本。
使用bitbucket到github
我将bitbucket-to-github
分发bitbucket-to-github
并添加了一些额外的内容,使其与我的情况更加相关。 在我的版本中,我做了以下更改:
- 同类操作可同时运行
- 使用SSH而不是HTTPS克隆存储库
警告
该脚本不是一个复杂的片段,它的意思是“完成任务!”。 因此,在脚本执行期间,始终监视控制台输出。 任何错误都不会停止整个脚本,但是消息将被打印到控制台。
>运行脚本时打印到控制台的错误消息
就我而言,我的存储库之一无法推送到Github,因为我的Blob大于100mb。 我没有花时间来解决它,因为文件只是很久以前我班上一些腌制过的经过训练的NN模型。
最后,感谢pouriaa创建了我可以分叉的脚本。 随意分叉我或他自己使用!
From: https://hackernoon.com/hi-github-bye-bitbucket-c0ba7d5051a4