我有一个git repo.在我在代码库中进行的每次重大更改之后,我所做的就是进入终端并执行一组命令.
git add .
git commit -m 'some message'
git push origin master
Run Code Online (Sandbox Code Playgroud)
每天都是一样的,这个过程很无聊.任何人都可以建议一种方法来以某种方式自动化这个过程?
我正在运行Linux Mint 14操作系统.
Icy*_*ame 19
您可以使用Bash脚本轻松自动执行此操作.
git add .
echo 'Enter the commit message:'
read commitMessage
git commit -m "$commitMessage"
echo 'Enter the name of the branch:'
read branch
git push origin $branch
read
Run Code Online (Sandbox Code Playgroud)
将上面的代码存储为.sh
文件(比如说gitpush.sh
)
因为你必须使这个sh文件成为可执行文件,你需要在终端中运行以下命令:
chmod +x gitpush.sh
Run Code Online (Sandbox Code Playgroud)
现在运行此.sh
文件.
每次运行它时,它都会询问您提交消息和分支的名称.如果分支不存在或未定义推送目标,则git将生成错误.要阅读此错误,我已添加最后一条read
语句.如果没有错误,那么git会生成pushed successfully
消息类型.
Fre*_*ihl 10
这不是很多要打字的事情,但是通过使用别名可以简化这个过程.
编辑$HOME/.gitconfig
以添加一些快捷方式,例如git p
用作别名git push origin master
,使用:
[alias]
p = push origin master
Run Code Online (Sandbox Code Playgroud)
如果您使用像bash这样的下降shell,则可以使用历史记录功能.您需要知道的一切都在bash的手册页中.
在这里阅读有关别名的更多信息
另一方面,git add .
它可能不是最好的方法,因为它将文件夹中的每个文件添加到临时区域.最好git add -u
只用于添加索引中已有的文件.
作为一个大块每天承诺你的工作一次不是对版本控制的有效使用.制作反映代码库开发步骤(或存储库中正在跟踪的其他内容)的小型,常规,原子提交要好得多
使用shell脚本可能有点过分 - 大多数人使用别名来自动化git命令,作为shell别名或git别名.
在我的例子中,我使用shell别名 - 其中一些是:
alias gp='git push'
alias gc='git commit'
alias gca='git commit -a'
alias gcm='git commit -m'
alias gcam='git commit -am'
Run Code Online (Sandbox Code Playgroud)
所以对我来说你要问的是:
gcam "My commit message";gp
Run Code Online (Sandbox Code Playgroud)
这不是很多打字而且很难玩,我这样做和类似的git操作每天几十次(我知道 - 因为我检查我的shell历史).
使用小别名而不是脚本的原因是我可以灵活地使用不同的提交方式.如果我使用脚本,我会失去这种灵活性.
你可以在$HOME/.gitconfig
或中使用别名和shell函数.git/config
[alias]
newalias = "!f(){ git add . && git commit -m \"$1\"; git push origin master; };f"
Run Code Online (Sandbox Code Playgroud)
并称之为
$ git newalias "message ..."
Run Code Online (Sandbox Code Playgroud)
小智 6
windows的最佳解决方案:1)在系统上的任何位置创建一个文本文件,并根据需要更改字段后将以下代码插入其中
git add .
git commit -m "commitMessage"
git push url master
exit
Run Code Online (Sandbox Code Playgroud)
2) 保存并退出文件。
3) 将文件名更改为push.sh
.
4) 使用 git powershell 导航到系统上的文件目录,然后使用以下命令chmod +x push.sh
使您的文件可运行。
5)点击windows开始搜索Task Scheduler
,点击创建新任务。
6)单击操作并浏览到您的push.sh
文件,然后按确定。
7) 导航到触发器并修改调度时间。
现在您有了一个可以根据需要自动执行的脚本。