草庐IT

git - 阻止将琐碎的 merge 推送到 git 服务器

前阵子我askedourdeveloperstouserebaseinsteadofmergebeforepushing.消除琐碎的merge使得更容易遵循提交图(即:gitk、gitlog)。有时人们仍然会不小心进行一些琐碎的merge,然后再进行推送。有没有人有编写阻止琐碎merge的服务器端Hook的便利或提示?我所说的“简单merge”是指没有冲突的merge。Here'sanexample,和here'sabetterexplanationofatrivialmergeingit.更新2010年11月10日星期三01:26:41:所有评论都很棒!谢谢。考虑以下几点:我真正要求

windows - git-bash $PATH 无法用空格解析 windows 目录

我想在Windows7(32位)机器上使用git-bash和github客户端。不知何故,git-bash已经从windows系统PATH中学习了$PATH变量。但是,我发现git-bash中的$PATH没有正确解析带空格的win系统PATH。例如$PATH输出:"..../c/Program:Nosuchfileordirectory"有办法解决吗?为gitshell构造$PATH的git-bash脚本在哪里?谢谢 最佳答案 为什么不使用绝对path而不是相对path并且如果文件夹的文件名包含空格只需使用""(引号).例。cdC:

windows - git-bash $PATH 无法用空格解析 windows 目录

我想在Windows7(32位)机器上使用git-bash和github客户端。不知何故,git-bash已经从windows系统PATH中学习了$PATH变量。但是,我发现git-bash中的$PATH没有正确解析带空格的win系统PATH。例如$PATH输出:"..../c/Program:Nosuchfileordirectory"有办法解决吗?为gitshell构造$PATH的git-bash脚本在哪里?谢谢 最佳答案 为什么不使用绝对path而不是相对path并且如果文件夹的文件名包含空格只需使用""(引号).例。cdC:

git - git 的 ZSH 自动完成需要大量时间,我可以将其关闭或优化吗?

Git的选项卡自动完成功能对小型项目很有用,但我目前正在处理两个使用git的大型项目,对于这些项目来说,它比没用还糟糕。每当我输入,比如说,gitaddforms,git需要20秒或更长时间才能找到文件(在本例中为forms.py),并且在这个时间跨度内我无法在终端中执行任何其他操作。有什么方法可以关闭自动完成功能,或者以某种方式使其更快? 最佳答案 这不是git自动完成文件名,而是你的shell。你在做的时候有同样的延迟吗?“猫形态”?看看这篇有类似问题的帖子:http://talkings.org/post/5236392664

git - git 的 ZSH 自动完成需要大量时间,我可以将其关闭或优化吗?

Git的选项卡自动完成功能对小型项目很有用,但我目前正在处理两个使用git的大型项目,对于这些项目来说,它比没用还糟糕。每当我输入,比如说,gitaddforms,git需要20秒或更长时间才能找到文件(在本例中为forms.py),并且在这个时间跨度内我无法在终端中执行任何其他操作。有什么方法可以关闭自动完成功能,或者以某种方式使其更快? 最佳答案 这不是git自动完成文件名,而是你的shell。你在做的时候有同样的延迟吗?“猫形态”?看看这篇有类似问题的帖子:http://talkings.org/post/5236392664

windows - 在 Windows 上更改 Git 提示符

我在Windows上使用Git,通过GitExtensions安装,MSysGit(最新)在安装过程中选择了“不修改我的Windows提示符”。现在,我希望能够修改默认提示(默认情况下仅显示分支名称,还显示自从我上次推送到origin以来经过了多少时间以及多少次本地提交>(或者特别是origin/master,以更容易的为准)。所以说而不是:me@myPC/c/myRepo(master)我会看到类似这样的内容:me@myPC/c/myRepo(master)5|10:20意思是我最后一次推送是在10小时20分钟前,此后我已经进行了5次本地提交。在您提到它之前,我知道可以使用Power

windows - 在 Windows 上更改 Git 提示符

我在Windows上使用Git,通过GitExtensions安装,MSysGit(最新)在安装过程中选择了“不修改我的Windows提示符”。现在,我希望能够修改默认提示(默认情况下仅显示分支名称,还显示自从我上次推送到origin以来经过了多少时间以及多少次本地提交>(或者特别是origin/master,以更容易的为准)。所以说而不是:me@myPC/c/myRepo(master)我会看到类似这样的内容:me@myPC/c/myRepo(master)5|10:20意思是我最后一次推送是在10小时20分钟前,此后我已经进行了5次本地提交。在您提到它之前,我知道可以使用Power

git - 忽略 bash 反引号执行而不转义 git commit 中的 ` 字符

这个问题在这里已经有了答案:DifferencebetweensingleanddoublequotesinBash(7个答案)关闭10个月前。我经常在提交中使用反引号字符。我也经常使用gitcommit-m提交当我运行这样的命令时gitcommit-m"add`foo`"Bash尝试执行foo。我可以使用反斜杠\来转义反引号,但我希望有一个更好的解决方案来避免一直转义反引号。

git - 忽略 bash 反引号执行而不转义 git commit 中的 ` 字符

这个问题在这里已经有了答案:DifferencebetweensingleanddoublequotesinBash(7个答案)关闭10个月前。我经常在提交中使用反引号字符。我也经常使用gitcommit-m提交当我运行这样的命令时gitcommit-m"add`foo`"Bash尝试执行foo。我可以使用反斜杠\来转义反引号,但我希望有一个更好的解决方案来避免一直转义反引号。

git - 类似 GNU screen 的 Git Bash 多 session 管理器

我不确定如何命名这个问题,因为我不确定我所谈论的程序类型的技术名称是什么。GitBash是否有类似于screen、tmux或byobu的程序可用?我知道所有3个都可用于Cygwin,但我找不到有关将它们与GitBash一起使用的信息。我喜欢GitBash,因为它更简单,占用的空间更少,等等。 最佳答案 现在windows的官方git是基于msys2的,它似乎至少有tmux包。您可以按照说明安装g4wsdkhere然后通过pacman安装tmux。 关于git-类似GNUscreen的Gi