git自动push脚本
目录
最近几天尝试各种git库管理方案,还有各种库调试。
突然感觉到git的push太过繁琐了,用 git add.
全加上不科学, 一个个加又太费劲,内容撸完了推送一下还要输入那么多字,还要分三步,即使部分步骤用 &&
\
也要打很多字,还真不如换成shell推送。
多方查证实验,目前比较好用的方法是这样:
因为一般大家都会添加一些全局忽略,所以基本不需要 --exclude
了,直接把其他的也添加上--others
,只不过执行命令的时候会提示,一些文件已经被徐略,如果要添加,使用 -f
添加。
push.sh
|
|
通过 git ls-files
列出需要添加的文件名,然后用 xargs
给 git add
然后以后push只需要:
./push "填写commit内容"
Enter
个人需求比较简单,所以只是添加所有修改过的文件(--modified
),和新添加未追踪的文件(--others
),排除(--exclude
)掉node_modules
和系统隐藏文件而已。
附 ls-file
使用说明 https://www.git-scm.com/docs/git-ls-files/1.7.0
update @ 2019年05月24日
用上面的方法,如果文件名中包含空格会报错,无法成功执行命令。 处理方法如下 :
|
|
git ls-files 使用 -z
参数使用null处理空格, xargs 使用 -0
参数处理。