我有点晚来参加git聚会,但是我有一个简单的问题。
我正在开发三个功能实验,它们目前都在我的主分支上。这些功能可以称为postits、auth和uploads。
当我在我的主分支上执行git status
时,我得到了一个列表,其中包含~10个“已更改但未更新”的条目和~15个“未跟踪文件”。所有这些条目都属于这三个功能实验之一。
我该如何将这些条目移动到三个新的功能分支中,以便我可以再次拥有干净的工作目录?
我有点晚来参加git聚会,但是我有一个简单的问题。
我正在开发三个功能实验,它们目前都在我的主分支上。这些功能可以称为postits、auth和uploads。
当我在我的主分支上执行git status
时,我得到了一个列表,其中包含~10个“已更改但未更新”的条目和~15个“未跟踪文件”。所有这些条目都属于这三个功能实验之一。
我该如何将这些条目移动到三个新的功能分支中,以便我可以再次拥有干净的工作目录?
$ git checkout -b postits # create postits branch based on the current master
$ git add X Y Z # add your parts, maybe with -p to get parts of files
$ git commit # commit to postits branch
$ git checkout -b auth master # make branch based on master (not including postits)
$ # etc
git checkout -b auth master
。 - manojldspostits
时,postits
现在充满了其他我不需要的文件。当我尝试使用git checkout master
时,它阻止了我。我该如何清理这些文件或者一开始就不复制它们呢? - sscirrusgit stash -u
来完成这个操作(假设你的 git 版本比较新;否则,在执行stash
前,需要使用git add
添加所有未跟踪的文件)。首先使用stash
命令将你的工作目录清空,然后你就可以干净地切换分支并执行git stash apply
、git reset HEAD
和git add
命令,以便让每个分支都达到你想要的状态。 - Danica