Git基于分支重新创建一个新项目

1,852 阅读1分钟

前言

今天碰到一件事,需要基于项目某个commit重新创建一个全新的项目,后面这两个项目没有关系。正常情况下我们都是基于某个commit创建分支,在分支上继续开发,后面合并分支。但是这次不同,要重新创建项目,后面不会合并。于是研究了下怎么操作,这里记录一下。

方法

思路是创建新分支,用新分支替代master分支,这样就能保留之前的提交记录,下面给出详细步骤

#基于commit SHA1创建新分支,SHA1,通过 git log获取
git branch newbranch commitSHA1 

#切换到新分支
git checkout -b newbranch

#退到项目的上一次目录,比如/workspace/project,cd到workspace目录,然后复制项目
cp -r project/ newproject/

#切换到新的项目目录
cd newproject/

#删除本地的master分支
git branch -D master

#将当前新分支重命名为master
git branch -m master

#修改仓库地址
git remote set-url origin newurl

#提交修改
git push -f origin master