在我输入git commit -a文本编辑器后弹出,然后输入我的评论.键入注释后我必须按哪些按钮才能使其进入实际提交的下一阶段?
我在Windows上使用mysysGit并使用默认设置.
我已将一个分支合并到主人,现在我可以在我的 git log
一段时间过去了,现在我想知道我以前是否也将master(带有该提交)推送到遥控器.怎么知道它是否被推了?
我可以想到一些解决方法,例如在其他地方重新存储存储库,或重置和检查然后重新合并,但我觉得可能有一个更简单的答案.
这是不同于我怎么能在git中知道一个分支是否已经合并到master中?据我所知它已合并,只是不知道远程推送.
我有一个源文件,其中添加了2个功能.为了允许采摘樱桃,我想分两个阶段:每个功能一个.到目前为止,在类似的情况下,使用git add -p我很好,提交一个功能,同时将本地文件留在最后阶段.
但是,我现在git add -p遇到了一个问题,即想要包含两个功能的编辑.即使编辑是在单独的行上,s(对于"拆分")不再想要将大块分成更小的部分......
简而言之:我无法通过这种方式分离2个功能的更改.有没有办法手动编辑补丁,例如使用vi,而不实际更改原始文件?
来自CVS,我们有一个策略,提交消息应该用bug号标记(简单后缀"...... [9999]").CVS脚本在提交期间检查此项,如果消息不符合则拒绝提交.
git hook commit-msg在开发人员端执行此操作,但我们发现自动系统检查并提醒我们这一点很有帮助.
在git push期间,不运行commit-msg.推送期间是否有另一个钩子可以检查提交消息?
我们如何在git推送期间验证提交消息?
我删除了我以前的git origin,并创建了一个新的.我做了git add.和git提交.但它会更新变化,我如何将一切都推到新的起源
我可以使用不包含最新提交的rebase来压缩本地功能/主题分支的一系列提交吗?这是我想在合并并推送到公共回购之前准备的提交.
我正在快速地工作并用糟糕的标题和描述进行了一些小的改动,我想要将两个或三个单独的逻辑提交压缩成一个很好的评论.我可以选择329aed9和af39283之间的一系列提交,这些提交可能在此功能分支的短历史中的任何一点吗?
git rebase -i RANGE_START_COMMIT_ID RANGE_LAST_COMMIT_ID
Run Code Online (Sandbox Code Playgroud)
谢谢!
我糊涂了.我想回到我之前在"git log"中确定的提交.
但是,当我做"git checkout"时,我没有得到承诺.没有什么变化.它告诉我我处于分离的HEAD模式,但我想要的文件不存在.
我做错了什么?
MRB
什么是git commit generation number(黑客新闻链接)以及它们的意义是什么?
我在Linux上使用命令行SVN客户端.我键入svn commit了调用它vim来编辑提交注释.当我查看已修改和添加的文件列表时,我决定取消提交.但是我怎样才能做到这一点?已经太晚了吗?
我在GitHub的开放小说中保留的一个东西是我想自动设置第一行的单词列表,这是字典中单词的数量.我的第一个选择是编写一个预提交钩子,它读取文件,计算单词,重写第一行并再次写回.这是代码
PRE_COMMIT {
my ($git) = @_;
my $branch = $git->command(qw/rev-parse --abbrev-ref HEAD/);
say "Pre-commit hook in $branch";
if ( $branch =~ /master/ ) {
my $changed = $git->command(qw/show --name-status/);
my @changed_files = ($changed =~ /\s\w\s+(\S+)/g);
if ( $words ~~ @changed_files ) {
my @words_content = read_file( $words );
say "I have $#words_content words";
$words_content[0] = "$#words_content\n";
write_file( $words, @words_content );
}
}
};
Run Code Online (Sandbox Code Playgroud)
但是,由于该文件已经暂存,我收到此错误
错误:checkout将覆盖对以下文件的本地更改:text/words.dic请在提交更改或存储更改之前切换分支.中止
可能最好将它作为一个后提交钩子并将其更改为下一次提交?或者做一些完全不同的事情?一般问题是:如果您想在提交期间处理和更改文件的内容,那么正确的方法是什么?