我改变了一个文件,加上一个新文件,并希望使用git存储将它们放在一边,而我切换到另一个任务。 但是,git自己存储只存储对现有文件的更改; 新的文件仍然在我的工作树,混乱了我未来的工作。 我如何隐藏这个未跟踪的文件?
我怎么能只存储我的分支上多个更改的文件之一?
我开始了一些新function的工作,经过编码后,我决定这个function应该在自己的分支上。 如何将现有的未提交的更改移动到新的分支并重新设置当前的分支? 我想重置我当前的分支,同时保留新function的现有工作。
我是新来的混帐,不太清楚如何存储工作。 比方说,我正在分支大师工作,并试图git pull和接收我的本地更改将被覆盖,需要被隐藏或提交的错误。 如果我没有执行任何更改并运行git stash ,那么请执行git pull并成功更新,当我git stash apply时会发生什么情况? 一般来说,如果别人修改文件,我运行git pull ,当我run git stash apply会发生什么? 它是否覆盖刚更新的文件,而不pipe它们是否在我藏起来的时候被上演? 它覆盖每个文件,我刚刚更新与git pull ,与文件被藏起来?
我试图做一个预先提交钩与裸奔的unit testing,我想确保我的工作目录是干净的。 编译需要很长时间,所以我想尽可能地利用重新编译的二进制文件。 我的脚本遵循我在网上看到的例子: # Stash changes git stash -q –keep-index # Run tests … # Restore changes git stash pop -q 这虽然导致问题。 这是repro: 将// Step 1添加到a.java git add . 将// Step 2添加到a.java git commit git stash -q –keep-index #保存更改 运行testing git stash pop -q #恢复更改 在这一点上,我遇到了问题。 git stash pop -q显然有一个冲突,并在a.java我有 // Step 1 <<<<<<< […]
我想存储未跟踪的文件,但是我一直传递错误的选项。 对我来说这听起来是对的: git stash save [-a|–all] 但是这实际上存储了被忽略的文件。 正确的是: git stash save [-u|–include-untracked] 当我运行git stash save -a并尝试git stash pop它,我得到所有被忽略的文件无数的错误: path/to/file1.ext already exists, no checkout path/to/file1.ext already exists, no checkout path/to/file1.ext already exists, no checkout … Could not restore untracked files from stash 所以命令失败。 我如何获得我的跟踪和未跟踪存储的变化? git reflog不存储隐藏命令。
我知道如何解决这个问题: user@host$ git pull Updating 9386059..6e3ffde error: Your local changes to the following files would be overwritten by merge: foo.bar Please, commit your changes or stash them before you can merge. Aborting 但是,难道没有办法让git pull为我stash和pop舞蹈吗? 如果这个命令有一个不同的名字,没关系。 为git stash; git pull; git stash pop创build一个shell别名git stash; git pull; git stash pop git stash; git pull; git stash pop […]
我经常使用git stash和git stash pop来保存和恢复工作树中的更改。 昨天,我在工作树上发生了一些变化,我把它藏起来,然后对工作树进行了更多的修改。 我想回顾一下昨天的隐藏的更改,但git stash pop隐藏git stash pop似乎删除所有对相关提交的引用。 我知道如果我使用git stash那么.git / refs / stash包含用于创build存储的提交的引用。 而.git / logs / refs / stash包含了整个存储。 但是那些引用在git stash pop之后不见了。 我知道提交仍然在我的资源库中,但我不知道它是什么。 有没有简单的方法来恢复昨天的存储提交参考? 请注意,这对我来说并不重要,因为我每天都有备份,可以返回到昨天的工作树来获取我的更改。 我问,因为必须有一个更简单的方法!