windows下git命令批处理执行

  目录

win10操作系统下利用批处理程序来运行git操作。

windows下git命令批处理执行

首先,我说一下我要这样做的起因,也许大家都会有感。
目前,我在做的项目是一个,但是下面分了5个子项目,这5个子项目,每一个自己拥有一个git仓库,所以,我在上传代码的操作就是,commit->pull->push,这样反复5回,因为有5个仓库嘛。有时候一天要好多次,效率太低了,于是我就想起了利用windows系统的批处理来做。
在使用批处理来操作git命令,首先需要把git的操作仓库方式改为ssh,使用ssh的话,还需要ssh key,ssh key的生成方法是,打开git的命令行工具,输入

1
2
3
4
5
6
7
8
9
10
11
// 首先检查一下现在电脑里是否已经有生成的ssh key
cd ~/.ssh
// ~这个符号我在git命令行下才能打出来,cmd没打出来。
// ~/ 这个路径就是C:\Users\userName这个,看看现在是否已经有现成的ssh key
// 如果有,就不用再生成了

// 接下来是生成ssh key命令
ssh-keygen -t rsa -C "88888***@qq.com"
// 需要自己在电脑中注册的git邮箱,如果不知道,可以查一下 git config --global user.email
// 生成的ssh key自动保存在C:\Users\userName这个目录下(这个是我的用户名)
// 生成过程中一路回车就好,不用设置密码等

有了ssh key,添加到github或自己公司的gitlab上就好了。
比如要添加到github上,登录账号进入自己的github库,步骤见下图
img
img
点进去之后,按照页面提示填写就可以了。
以上就是配置好了ssh key,之后就是用git拉取,推送代码了,这里有一个地方需要注意,那就是Git对仓库的操作方式,既然已经添加了ssh key,就需要用git的ssh提交方式。查看.git文件夹下的config文件,找到下面的内容

1
2
3
4
5
6
7
8
[remote "origin"]
// 这个是ssh提交方式
url = git@172.12.122.123:root/demo.git

// 这个是http提交方式
url = http://172.12.122.123/root/demo

fetch = +refs/heads/*:refs/remotes/origin/*

按照上面的写法,只留下ssh提交方式即可。
接下来,我们来写windows的批处理命令,先写一个处理一个仓库的git操作批处理。

1
2
3
4
5
6
7
8
9
10
11
12
chcp 65001
cd C:\WORK\git-ku\demo1
@echo off
echo git批处理开始执行
git status
git add .
git commit -m "update"
git pull
git push
echo ----------
echo git commit pull push都已完成,点击任意键退出
pause

再写一个调用多个批处理文件的操作

1
2
3
4
5
6
chcp 65001
pause
start /D "C:\Users\userName\Desktop\批处理node\git" call demo1.bat
start /D "C:\Users\userName\Desktop\批处理node\git" call demo2.bat
start /D "C:\Users\userName\Desktop\批处理node\git" call demo3.bat
start /D "C:\Users\userName\Desktop\批处理node\git" call demo4.bat

这里,需要注意一下,因为批处理是在cmd命令行下执行的,所以要把git的环境变量配好哦。
好了,通过这样的方法,以后麻烦的git操作,点击一下就可以搞定喽。