我是两个git人和GitHub的新手.我设法在Mac上本地设置所有内容,所以现在我可以通过git命令行(而不是Mac应用程序)将提交推送到GitHub .
当我直接从GitHub web界面推送提交时(例如快速修复拼写错误),我有机会"评论"提交,GitHub给了我一个提交标题和提交描述.我发现这非常有用.
但是,当我git push从本地机器git打开我的默认编辑器时:所以我写了提交注释,然后GitHub自动将它分为标题和"正文".有没有办法从终端评论提交?
我们如何将命令扩展到下一行?
基本上是Linux的替代品
ls -l \
/usr/
Run Code Online (Sandbox Code Playgroud)
这里我们使用反斜杠来扩展下一行的命令
什么是Windows的等价物?
有没有办法在Textedit打开的终端中打开文件进行编辑?
例如,如果命令可能打开文件进行编辑(例如git commit),而不是在vim或emacs中打开该文件,它将在Textedit(或者您选择的其他文本编辑应用程序,如Coda或Sublime)中打开.
作为一个额外的问题,有没有办法专门配置git自动打开git commit从应用程序目录在编辑器中运行后创建的文件?
当我git log用来检查我的提交解释性说明时
1. what I changed
2. blank line
3. why I changed it
Run Code Online (Sandbox Code Playgroud)
在3行不像1. what i changed 2. blank line 3. why i changed只在1行.
当我在git中标记版本化代码时,我喜欢在标记消息中使用项目符号.
这可以通过带注释的标签轻松完成:
git tag -a v1.0.0
* Change number 1
* Change number 2
#
# Write a tag message
#
Run Code Online (Sandbox Code Playgroud)
但是,如果我使用-m选项尝试相同的标记,则标记消息不是我所期望的:
git tag -a v1.0.0 -m "* Change number 1\n* Change number 2"
git show v1.0.0
...
* Change number 1\n* Change number 2
....
Run Code Online (Sandbox Code Playgroud)
'\n'被字面解释为字符'\'和'n'而不是换行符.我想使用该-m选项,以便我可以自动化标记过程.
有没有办法git tag在-m选项中包含实际的换行符?
我已经做了一段时间的oneline提交消息,但是它没有提供有关提交的全部信息.
git commit -m "message"
Run Code Online (Sandbox Code Playgroud)
我曾经使用过git Gui工具,它可以选择执行多行提交消息.一个在标题和一个详细.我们如何从命令行执行此操作?
有人可以解释任何提交错误修复和新更改的好方法吗?我通常在提交消息的开头写"NEW:"或"FIX",我想知道你们是怎么做到的?
我承诺使用git git commit -m 'commit message',但这只是简短描述。如何使用git bash添加更详细的描述?
如何使用添加多行消息
git commit -a -m "..."
Run Code Online (Sandbox Code Playgroud)
这个类似问题的答案似乎行得通(通过投票和接受来判断),但似乎有点麻烦1。
git 文档内容如下:
-m <msg>
--message = <msg>
使用给定的<msg>作为提交消息。如果给出了多个-m选项,则它们的值将串联为单独的段落。
因此,建议仅对-m消息的每一行使用一个新行吗?还是“段落”添加了额外的行距?
如果将来的命令版本允许我们仅\n在句子之间添加以表示换行符,那就太好了。
1链接的答案基本上建议使用消息模板文件,并通过以下命令直接git使用该文件:git commit -t <template_file>
如何使用 -m 在 git 提交中生成多行注释
$ git commit -m "This change is for blah"
$ git commit -m "This change is for blah\nAnd also for this blah"
Run Code Online (Sandbox Code Playgroud)
第二行,\n不产生多行注释
我使用的是 Mac 终端,不确定这是否重要。