icejs icon indicating copy to clipboard operation
icejs copied to clipboard

仓库迁移至 alibaba/ice

Open chenbin92 opened this issue 5 years ago • 6 comments

基于一些考虑,将 icejs 仓库迁移至 alibaba/ice 仓库下

alibaba/ice 仓库相关操作

  1. 删除 commit 历史记录
# 删除 .git 目录
$ cd alibaba/ice
$ rm -rf .git
  1. 重新初始化 & 保留 docs&scripts 目录
$ git init
$ git add .
$ git commit -m 'Initial commit'

# 重新提交
$ git remote add origin <url>
$ git push --force --set-upstream origin master
  1. 删除 Releases/Tags 历史记录
# To delete remote tags (before deleting local tags) simply do:
$ git tag -l | xargs -n 1 git push --delete origin
  1. ~~删除 issues 历史记录~~
  • 目前只能手动删除 issue (暂未提供删除的相关 api
  • 删除 issue 之后保留其 id,当访问时显示已删除的提示
  • 删除 issue 时协作者不会收到通知
  1. ~~删除 projects 历史记录~~
  2. ~~关于 contributors 信息,建议保留不做删除~~

ice-lab/icejs 迁移到 alibaba/ice 流程

  1. 将 alibaba/ice 仓库清理完成之后,将 ice-lab/icejs 的 remote-url 重新设置
# 保留原有的 commit & tags 
$ cd ice-lab/icejs
$ git remote set-url origin [email protected]:alibaba/ice.git
$ git push -f origin master
  1. ~~issue 需要转移到 alibaba/ice 仓库下(issue 较少手动迁移即可)~~
  2. ~~迁移之后验证文档发布流程~~
  3. ~~迁移之后验证 icejs 发布流程~~
  4. 迁移之后将 icejs 进行归档(Archived)并更新 README 链接到 alibabba/ice 仓库下

其他

迁移完成之后需要做的事情:

  1. 在 alibaba/ice 的 issue 中新增一条置顶 issue 公告迁移的事情
  2. 在飞冰群里发布迁移的公告

问题

关于 alibaba/ice 仓库的 issue 处理方法需要讨论下,目前 alibaba/ice 仓库已关闭 issue 1270 个,未关闭 issue 53 个:

  • 方案一:保留 issue,将现有 issue 进行清理需要关闭的统一关闭
  • 方案二:不保留 issue,将现有 issue 全部删除(但目前无批量删除 issue 的接口只能手动删除)

个人建议方案一,保留 issue 以便之前问题的搜索和历史记录,且对 icejs 无影响

chenbin92 avatar May 06 '20 01:05 chenbin92

@imsobear 看下上面的步骤是否合理

chenbin92 avatar May 06 '20 04:05 chenbin92

  • alibaba/ice 本地删除保留 docs&scripts 目录
  • alibaba/ice issue 只关闭不删除
  • icejs 相关包的 package.json repository 内容需要更新下,跟随下个版本发布
  • icejs 迁移过来后 ci 流程要看下,不一定还能用 github actions,可能要迁移到 travis

imsobear avatar May 06 '20 09:05 imsobear

  • alibaba/ice 本地删除保留 docs&scripts 目录
  • alibaba/ice issue 只关闭不删除
  • icejs 相关包的 package.json repository 内容需要更新下,跟随下个版本发布

+1

  • icejs 迁移过来后 ci 流程要看下,不一定还能用 github actions,可能要迁移到 travis

alibaba/ice 仓库的 CI 流程应该只需要保留 「文档生成和上传」 的部分,理论上 GitHub Actions 也可以满足,这个我确认下。

chenbin92 avatar May 06 '20 09:05 chenbin92

git 获取远程所有分支:

$ git branch -r | grep -v '\->' | while read remote; do git branch --track "${remote#origin/}" "$remote"; done
$ git fetch --all && git pull --all

chenbin92 avatar May 08 '20 10:05 chenbin92

备份 alibaba/ice 仓库至 ice-lab/iceworks-backup

image

chenbin92 avatar May 08 '20 11:05 chenbin92

迁移验证

1. 站点文档构建和上传到 oss 正常,站点展示正常

2. issue、PR、commits、branches、contributors 均与 ice-lab/icejs 保持同步

image

3. master Travis CI 通过

image

4. release-next 发布分支 CI 通过

image

5. release-next 发布版本正常

image

迁移遗留问题

  • [ ] alibaba/ice 仓库的 Slogan 是否需要更改
  • [ ] Travis CI 和 GitHub Actions 是否可以统一
  • [ ] alibaba/ice 遗留的 Tag 未完全删除(已删除 796 个,未删除 59 个),需要将 icejs 的 tags 推送到 alibaba/ice
  • [ ] ice-lab/icejs 仓库归档,分支合并 https://github.com/ice-lab/icejs/pull/307

chenbin92 avatar May 08 '20 17:05 chenbin92