Git - 如何在不修改文件的情况下结账?

时间:2016-05-04 04:00:37

标签: git

如何在不修改文件的情况下结帐?

是否有可以执行以下操作的git命令?

curl -X PUT -d $'my message\n' http://localhost:8000/hello

3 个答案:

答案 0 :(得分:1)

  

如果我使用存储

,我将不得不解决冲突

然后另一种方法是:

  • create a second working tree git worktree(git 2.5+,最好是git 2.8 +):

    cd /targetdir
    git worktree add ../master master
    
  • 将文件从某个分支工作树添加到主工作树

    cd ../master
    git --work-tree=../targetdir add -A .
    

这样,您可以执行git diff,并通过将some-branch工作树导入master工作树来查看添加/修改/删除的内容。

答案 1 :(得分:1)

使用重置(--soft根本不触及索引文件或工作树,但将头部重置为< commit>):

git reset --soft master

它会重置您当前的分支(如果它不是主分支)不接触文件。

但似乎更接近你所要求的是转移到另一个分支,同时保持一切,只是简单:

git symbolic-ref HEAD refs/heads/master

答案 2 :(得分:0)

正如我从您编写的代码中看到的那样,您希望将所有内容从some-branch复制到master,因此实际上您希望将some-branch合并到master

~/target-dir (master)$ git merge --no-ff some-branch

这个--no-ff标志确保您将拥有合并提交,并且您将能够清楚地进行差异化。

如果在合并期间您遇到冲突 - 您只需要处理它们