将主机重置为空状态

Non*_*ame 3 git ruby-on-rails github

我创建了一个新的 Rails 应用程序,并将代码直接从 master 推送到 Github(在存储库中首次提交)。然而我犯了一个错误,我不想直接从master提交这个新的Rails应用程序,而是从master创建一个新分支并从这个新分支推送新的Rails应用程序。

因此,我想:

  1. 删除 Github(远程)中 master 的提交,因此 master 为 EMPTY
  2. 从 master 创建一个新分支,并将 master 中的先前提交添加到这个新分支中。
  3. 推送到Github。

Cod*_*ard 6

删除Github(远程)master上的提交,因此master为EMPTY

您可以创建一个孤立分支 - 孤立分支是没有任何历史记录的分支

# Create "clean" branch
git checkout --orphan <name>

# remove all existing content if you wish
git clean -Xdf && git clean -xdf
Run Code Online (Sandbox Code Playgroud)

从 master 创建一个新分支,并将 master 中的先前提交添加到这个新分支中。

几个选项:

# Option 1 - Start your branch from the last desired commit
git checkout -b <name> <SHA-1> 

# Option 2 - Set your branch to the desired commit 
git reset <SHA-1> --hard

# Add the required commit on top of your branch
git cherry-pick <SHA-1>
Run Code Online (Sandbox Code Playgroud)

推送到Github。

# force the update of the new branch
git push <origin> master -f
Run Code Online (Sandbox Code Playgroud)