Tag: 混帐

git status只能修改文件吗?

是否可以将git status和只显示修改的文件? 问题是我有太多的阶段性文件,我不想提交或gitignore此刻,我不能向上滚动。 我有一个在Ubuntu上设置的回滚限制。

我如何检查bash脚本,如果我的本地git回购有变化

有一些脚本在检查更改时无法正常工作。 我试过这样的: VN=$(git describe –abbrev=7 HEAD 2>/dev/null) git update-index -q –refresh CHANGED=$(git diff-index –name-only HEAD –) if [ ! -z $CHANGED ]; then VN="$VN-mod" fi 是否有某种布尔检查,如果自上次提交以来发生了更改,或者如何才能真正testing是否对本地存储库进行了新更改 我正在做这一切的版本创build脚本(我在这里find的地方)

我需要阅读什么来理解git是如何工作的?

我想从build筑师的angular度来理解git的工作方式。 如何存储文件,如何保存版本以及如何进行更改(分支,合并等)? 我不search如何使用它的信息。 (我已经在教程中find了很多页面)。但是我没有find任何“幕后”细节,这会让我明白。

Git diff –name-only并复制该列表

我只想获得两个修订版本之间更改的文件列表,这很简单: git diff -–name-only commit1 commit2 > /path/to/my/file 但是,如果我想将所有列出的文件复制到另一个地方,我该写些什么呢? 我需要完全相同的目录结构来复制文件。 例如,我修改并添加了文件: /protected/texts/file1.txt /protected/scripts/index.php /public/pics/pic1.png 我想在/home/changes/所有这些改变和添加文件: /home/changes/protected/texts/file1.txt /home/changes/protected/scripts/index.php /home/changes/public/pics/pic1.png

推后使用反向修补程序撤消Git提交?

我推了一个提交,我想通过应用和提交一个反向修补来恢复由此提交引入的更改。 我该怎么做?

我可以让git告诉我一个用户修改过的所有文件吗?

我想让git给我一个由所有提交的用户修改的所有文件的列表。 我特别的用例是我参与了Ruby on Rails项目的国际化,我们想知道哪些文件已经完成,哪些文件还需要完成。 有问题的用户只能在i18n上工作,而不能在其他代码库上工作。 所以信息都应该在git中,但我不知道如何解决。

存储@ {1}是不明确的?

我试图获得有关我的藏匿的信息,但混帐告诉我, stash@{0}和stash@{1}是不明确的。 git stash list工作正常, .git/logs/refs/stash似乎有适当的内容(不是我是git内部专家)。 % git stash list stash@{0}: On master: two stash@{1}: On master: one % git stash show stash@{1} fatal: ambiguous argument 'stash@1': unknown revision or path not in the working tree. Use '–' to separate paths from revisions 只是简单的git stash show工作正常。 那么为什么git stash list的名称让我觉得模糊?

如何让Git默认使用所有我的仓库rebase?

有没有办法设置主机Git存储库,以便从其(本地)克隆完成的任何git pull默认使用–rebase ? 通过在StackOverflow上search,我了解了有关branch.autosetuprebase ,但是需要为每个克隆分别进行configuration。 我的项目stream程是build立起来的,因此我们在merge一个特性分支之前pull了develop分支。这个pull几乎总是使用–rebase ,所以我想弄清楚这是否可以作为默认值。 ( 编辑根据Jonas Wielicki的讨论重构问题。)

从git diff中排除一个目录

我想知道如何从我的Git diff中排除整个目录。 (在这种情况下/规格)。 我使用git diff命令为我们的整个软件版本创build一个diff。 然而,规范的变化与这个程序无关,只是令人头疼。 现在我知道我可以做 git diff previous_release..current_release app/ 这会为app目录中的所有更改创build一个diff,但不会在lib /目录中创build。 有谁知道如何完成这个任务? 谢谢! 编辑:我只是想清楚,我知道我可以串在我的所有目录的参数结束,减/规范。 我希望有一种方法可以真正排除命令中的单个目录。

修改一个不是以前提交的提交

我经常会有如下的工作stream程: 将更改提交给一组文件 将更改提交到不同的文件组 意识到我错过了属于第一次提交的一些更改 诅咒 我不能使用git commit –amend因为它不是我需要改变的最近的提交。 在不碰第二个提交的情况下添加更改的最佳方法是什么?