jjzjj

git - 'adding to the index' 在 Git 中的真正含义是什么?

我有一个关于Git基础知识的问题。基本上,在Git中称为“添加到索引”的操作是什么意思?我是这样理解的:如果git为任何文件计算SHA-1和,那么基本上添加到索引意味着它计算SHA-1和并将文件添加到暂存区。我说的对吗? 最佳答案 一个有用的比喻“将文件添加到索引”、“暂存文件”、“将文件添加到暂存区”都是同义词。相比索引,我个人更喜欢stagingarea这个词,因为它本身就是一个有用的比喻。如果提交类似于“拍快照”,分期就是“构图”。想象自己是一名专业摄影师,即将拍摄一张类(class)照片:您召集所有拍摄对象并让他们准备好拍照

git - 多个集结区

我可以有多个暂存区域或使用git实现类似的效果吗?我的典型工作流程是:工作,工作,工作现在我有了一些有用的想法,让我们提交它gitadd-p,y,y但首先是这些较小的样式更改:gitresetHEAD.gitadd-p,n,n,y,q,gitcommit-m"样式改变"gitadd-p..提交实际内容有时我需要从一大堆更改中做出20个较小的提交。如果我可以像gitadd-p一样运行补丁,然后将每个补丁“分发”到它自己的暂存区域并分别提交每个区域,这将每天节省我几个小时。 最佳答案 编辑,2020年5月30日:在Git2.15或更高版

git - 多个集结区

我可以有多个暂存区域或使用git实现类似的效果吗?我的典型工作流程是:工作,工作,工作现在我有了一些有用的想法,让我们提交它gitadd-p,y,y但首先是这些较小的样式更改:gitresetHEAD.gitadd-p,n,n,y,q,gitcommit-m"样式改变"gitadd-p..提交实际内容有时我需要从一大堆更改中做出20个较小的提交。如果我可以像gitadd-p一样运行补丁,然后将每个补丁“分发”到它自己的暂存区域并分别提交每个区域,这将每天节省我几个小时。 最佳答案 编辑,2020年5月30日:在Git2.15或更高版

git - IntelliJ IDEA git 集成和暂存区(索引)

在IntelliJIDEA12中是否可以在基于git的项目中使用暂存区(索引),或者在集成中抽象概念? 最佳答案 更新:此功能在IntelliJIDEA2020.3+版本中可用。原答案:暂不支持Git索引/暂存区,欢迎来voteforthisfeaturerequest. 关于git-IntelliJIDEAgit集成和暂存区(索引),我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions

git - IntelliJ IDEA git 集成和暂存区(索引)

在IntelliJIDEA12中是否可以在基于git的项目中使用暂存区(索引),或者在集成中抽象概念? 最佳答案 更新:此功能在IntelliJIDEA2020.3+版本中可用。原答案:暂不支持Git索引/暂存区,欢迎来voteforthisfeaturerequest. 关于git-IntelliJIDEAgit集成和暂存区(索引),我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions

git - 你能用 TortoiseGit 与索引/暂存区交互吗?

我的任务是向我的同事们介绍Git,他们几乎都是习惯使用TortoiseCVS的Windows用户。我已经使用Git大约一年了,但我几乎只使用Unix命令行界面。所以我一直在尝试熟悉包括TortoiseGit在内的WindowsGUIGit工具。但在我看来,这不仅仅是Git命令行界面上的GUI皮肤,而且实际上完全抽象了一些东西,特别是索引。例如,当我在Windows资源管理器中右键单击一个新的、未版本化的文件时,我可以从TortoiseGit菜单中选择“添加”,然后提交这个文件,但是这个相同的菜单项在已经存在的文件中丢失了Git,在这种情况下我只看到选项“submoduleadd”。难道

git - 你能用 TortoiseGit 与索引/暂存区交互吗?

我的任务是向我的同事们介绍Git,他们几乎都是习惯使用TortoiseCVS的Windows用户。我已经使用Git大约一年了,但我几乎只使用Unix命令行界面。所以我一直在尝试熟悉包括TortoiseGit在内的WindowsGUIGit工具。但在我看来,这不仅仅是Git命令行界面上的GUI皮肤,而且实际上完全抽象了一些东西,特别是索引。例如,当我在Windows资源管理器中右键单击一个新的、未版本化的文件时,我可以从TortoiseGit菜单中选择“添加”,然后提交这个文件,但是这个相同的菜单项在已经存在的文件中丢失了Git,在这种情况下我只看到选项“submoduleadd”。难道

git - hg 相当于 git add -p?

是否有gitadd-p的mercurial等价物?引用man,带有选项-p(或--patch)的git-add执行以下操作:Interactivelychoosehunksofpatchbetweentheindexandtheworktreeandaddthemtotheindex.Thisgivestheuserachancetoreviewthedifferencebeforeaddingmodifiedcontentstotheindex. 最佳答案 看看recordextension(与Mercurial捆绑在一起)。请注

git - hg 相当于 git add -p?

是否有gitadd-p的mercurial等价物?引用man,带有选项-p(或--patch)的git-add执行以下操作:Interactivelychoosehunksofpatchbetweentheindexandtheworktreeandaddthemtotheindex.Thisgivestheuserachancetoreviewthedifferencebeforeaddingmodifiedcontentstotheindex. 最佳答案 看看recordextension(与Mercurial捆绑在一起)。请注

git - 在 Git 中仅在一个目录中提交更改

我在Mac10.6.6上使用Git1.7.4.1。从命令行,我如何只在一个目录中提交更改?我通过执行以下操作添加了目录:gitaddmy-dir但是做gitcommit-a列出了我的存储库中的所有更改,我只想从my-dir提交和推送更改。 最佳答案 为什么没有人提到你可以简单地gitcommit-m'message'--my-dir在我看来,OP不习惯/不喜欢直接使用暂存区。在没有更多上下文的情况下推荐这种方法也更安全,因为默认提交(所有暂存的内容)很可能会如果它已经上演,则不仅仅提交my-dir当OP未用于显式管理暂存区域时会产生