可能重复:
是否可以在git中预览隐藏内容?
我在这里看到你可以申请/取消申请藏匿,甚至可以从藏匿处创建一个新的分支.是否有可能只是在没有实际应用它的情况下简单地看到藏匿处内的东西?
我经常把工作放在以后,然后其他的东西出现,几周后,我想检查藏匿,并找出如果我将它应用于当前状态的工作树会发生什么变化.
我知道我可以在藏匿处做一个git diff,但是这显示了工作树和藏匿之间的所有差异,而我只是想知道藏匿什么会改变.
我怎样才能做到这一点?
我有一个git分支(例如主线),我想在另一个开发分支中合并.或者我呢?
为了确定我是否真的想合并这个分支,我想看看合并将做什么的某种预览.最好能够查看正在应用的提交列表.
到目前为止,我能想到的最好的是merge --no-ff --no-commit,然后diff HEAD.
我知道我可以查看HEAD和当前状态之间的区别meld ..但是,如何查看分支之间的差异,例如master和develmeld?
目前我执行以下步骤:
mv /projectA /projectA_master)git clone urldevel分支cd projectA && git -b devel origin/devel meld /projectA_Master projectA难道没有一种更简单的方法可以在融合中获得相同的结果吗?我只需要它来审查更改,而不是主要用于合并.
如何将我当前的工作副本与存储区分开来?
我的用例:我的工作副本已包含我的更改的子集stash@{0},但我不想应用所有更改stash@{0}.我想做一个差异来帮助确定stash@{0}我的工作副本中仍然缺少哪些可取的变化.
我从这个答案中知道如何展示对藏匿的差异.
git stash show -p stash@{1}
Run Code Online (Sandbox Code Playgroud)
但是如何从存储中显示特定文件的差异?
我试图在藏匿处的两个分支之间获得差异.特别是在发送拉取请求之前,想要验证更改.
一直在阅读许多试图找出解决方案但尚未成功的文章.
以下是我研究过的文章:
有没有人有办法解决吗?
通过查看括号-git的源代码(Brackets的git扩展),我看到^!(caret bang)在调用时被附加到提交哈希git diff.见GitCli.js,第754行:
function getDiffOfFileFromCommit(hash, file) {
return git(["diff", "--no-ext-diff", "--no-color", hash + "^!", "--", file]);
}
Run Code Online (Sandbox Code Playgroud)
这将在命令行中转换为以下内容,使用相关文件作为示例:
$ git diff --no-ext-diff --no-color 1f9ea6e^! -- src/git/GitCli.js
Run Code Online (Sandbox Code Playgroud)
我知道这^将引用提交的父级.怎么^!办?
我们使用配置差异视觉工具diff.tool=xxx,然后运行git difftool以查看视觉差异。 您可以使用 - 查看存储git stash show,但是如何像使用 diff 一样在视觉上看到存储?
PyCharm 允许用户比较项目中的任何两个文件,或者比较任何具有先前 Git 提交的文件。有没有办法在存储中区分文件及其版本?
当然,这可以从命令行使用 Git 进行,但我想使用 IntelliJ 的图形编辑器来完成。
git ×10
git-stash ×5
diff ×2
branch ×1
git-branch ×1
git-diff ×1
git-merge ×1
meld ×1
pycharm ×1
working-copy ×1