前言

对于从svn转投git的我来说,每次的文件提交是我比较头疼和容易出错的地方。头疼是因为对于一个文件,提交时至少需要3行命令:
git add xxxx
git commit -m "xxxx"
git push
容易出错在于,git add时很容易把无关的文件都给选上,因此呢通常我会先筛一遍修改文件:
git pull
git status
然后再正向的选择去添加哪些文件去提交。
因此呢我觉得这个日常提交修改文件的过程可以形成一个简单的脚本用以节约时间。

执行效果

资源路径为:
https://gitee.com/gjm9999/myscript_python/blob/master/git_push.py
下载于linux系统,在git path下键入git_push.py,效果如下:
/home/gaojiaming/myscript/git_push is working
STEP.1: git pull
Already up-to-date.
脚本的第一步是执行git pull来更新仓库,如果此时有文件冲突的话会报merge error进而导致脚本退出,脚本不会继续执行避免了错误的merge文件。
STEP.2: git status
...
第二步是执行git status显示的打印当前没有提交的文件。
STEP.3: sel push file
0: ../crg/xxx_icg.v
1: yyy_main.v
第三步是将没有提交的modified状态文件筛出来并标号。
please sel 0 1 .. or all (default is all):
please input commit (default is update): test
STEP.4: git add/commit/push
第四步是手动选择哪些文件需要提交,如果不键入则默认modified所有文件均提交。之后在此键入commit信息,如果部键入默认为“update”。之后脚本会执行add-commit-push过程,完成修改文件的提交。