是否可以自动执行Git命令?

时间:2015-07-21 14:08:15

标签: git bash

我来自FTP,如果我想快速编辑一些文本,我可以上传文件并查看更改。我知道我需要使用Git,所以我使用Bash shell编程自动完成了3步骤(添加,提交,推送)。这样可以吗?

// in .bashrc file
launch() { 
  git add -A . ;
  git commit -m "$1" ;
  git push heroku master ;
  echo $1 ;
}

3 个答案:

答案 0 :(得分:5)

一般情况下,它很好。只需修复一个错误:

launch "my commit message"

没有引号,像

一样使用
-m

会产生错误,因为只有"我的"将被用作commit的参数,使用" commit"和"消息"作为{{1}}命令的单独参数出现。分号根本就没有必要,但如果保留则不会造成任何伤害。

答案 1 :(得分:4)

绝对可以。

自动执行SCM命令是完全正常的,事实上通常是持续集成。

要小心谨慎。你正在使用“-A”标志,所以如果你有一个你不想要的文件,并且没有被忽略,那么它将被添加到提交中。

保持警惕,你会没事的。

答案 2 :(得分:1)

从技术上讲,这是可以的,但你可能会有很长的小编辑历史而没有任何评论。虽然我确实看到你为你的提交添加了-m选项。

您可以使用此工作流程并拥有合理的历史记录的一种方法是将您的实时代码保存在单独的分支中。并定期进行交互式rebase,将一系列小型提交压缩到较少的语义上较大的提交中。

然后,您可以将这些较大的提交放入主分支。