我一直在使用主分支进行开发,现在想要清除它,只保留发布的提交记录,以便按照其预期的方式使用。我该如何将主分支中的所有内容复制到开发分支中,然后重置主分支呢?
我一直在使用主分支进行开发,现在想要清除它,只保留发布的提交记录,以便按照其预期的方式使用。我该如何将主分支中的所有内容复制到开发分支中,然后重置主分支呢?
从主分支创建开发分支并删除主分支,在主分支上不想保留任何提交历史记录的情况下重新创建它。
步骤1:创建开发分支
git checkout development
git push origin development
步骤2:删除主分支(如果主分支受到保护,您可能没有权限删除它,因此请在设置中取消主分支的保护)
git push origin :master
步骤 3:重新创建主分支并将其标记为受保护状态
git checkout --orphan master
git commit
git push origin master
git checkout -b <branch-name>
git commit -m #if needed
git checkout master
git reset origin/master
master
分支指向 dev
master
分支。master
重命名为 dev
。master
创建一个新分支,删除 master
并重新创建新的 master
。
git stash //保存当前更改。
git pull //拉取最新更改。
git checkout master //切换到 master 分支
git checkout -b dev //从 master 创建新分支
git branch --set-upstream dev origin/dev //将新分支添加到跟踪列表
git push //将新的 dev 分支推送到服务器
我认为其他朋友理解有所不同,请告诉我哪些是有帮助的。master
分支指向您的初始提交(存储库上的第一个提交),以便您只能在 master
上进行发布合并。git log --reverse --oneline // 最上面的提交将是第一个。复制它的哈希值(例如#1234)
删除旧的master
分支dev
。不能删除正在使用的分支。
git branch -d master // 删除本地master分支
git push origin :master //删除远程master,因为我们有备份,所以这是安全的
从第一个提交创建新的master
分支。
git checkout -b #1234 // 记住#1234是您的第一个提交ID。
git branch --set-upstream master origin/master //添加到新分支的跟踪
请原谅我的排版。