原文:https://blog.csdn.net/qq_38375394/article/details/80093003

bat脚本。windows的schtasks,也就是类似于linux的crontab

在你的项目根目录下,新建一个test.bat文件然后写入下面的代码

@echo off
d:
cd \phpStudy\WWW\test
git pull
@echo off 不显示后续命令行及当前命令行

我们继续来看下面的代码

d:
cd \phpStudy\WWW\test
写上面代码的原因是windows的计划任务,schtasks命令,默认起始路径:C:\Windows\System32。如果不加这两行,你手动执行test.bat是没有问题,但是用schtasks的时候就会出现问题了。请根据你自己实际的项目地址,修改,第一步先跳到你所在的盘,然后cd 到项目所在的目录。

然后就是最后一行代码

git pull
就是更新代码

然后就是写windows的计划任务schtasks了。在命令行中直接输入

schtasks /create /sc minute /mo 1 /tn "test" /tr "D:\phpStudy\WWW\test\test.bat"

来分析这这条schtasks,schtasks /create这个简称起手式就好啦。就是必须这么写。知道你是要创建这条schtasks。

/sc minute,/sc就指这条schtasks的类型。minute是分钟的意思,就是分钟类型,类型有很多,每小时每天每个月,具体的自己看文档。

/mo 1,/mo就是运行的频率,1就是每一分钟运行一次,假如/sc类型是hourly,就是每一个小时运行一次。/mo 2,就是每二分钟运行一次,假如/sc类型是hourly,就是每二个小时运行一次。这个很好理解把

/tn "test",/tn就是给这个计划任务取个名字,你想取啥就取啥,就跟你孩子出生一样,你要给他取个名字,想叫张三就叫张三,想叫李四就叫李四。记住名字要用英文的双引号包围起来""

/tr "D:\phpStudy\www\test\test.bat",/tr就是你要运行的路径,就好像你让我去拿一个东西,你总要告诉我在哪把,不然我怎么知道在哪。

就是这么简单,把这条创建schtasks改成你自己的,就可以了。什么你说你不会改,我说的这么仔细了还不会,你自己看文档去把。

schtasks创建完成,现在你总要看看有没有成功的自动git pull把。有个很简单的方便的方法,schtasks设置成每分钟执行。然后更改一下README.md,提交上去,然后去你服务器看下README.md有没有更改内容。

还有另外一个方法,那就是用schtasks的显示所有计划任务命令

schtasks /query
这里输入schtasks /query,出现报错

就先输入以下命令,切换下

chcp 437
切换回来输入

chcp 936
输入chcp 437后,在输入下schtasks /query就能查询到拉。想要知道更多的schtasks命令,输入以下命令查看详情

help schtasks
结束!!!!!!

----------------------------------分割线--------------------

下面来说下我在用schtasks时的一点问题,以后你们假如遇到相同的问题就可以快速解决了

如图,这是就我在部署过分中遇到的问题,解决方案很简单:

在桌面上的我的电脑右键属性----》点击左侧列表中的高级系统设置-----》高级分页下,点击下面的环境变量-----》在系统变量选框中,找到并选择变量名为 Path 的变量,选择后点击下面的编辑按钮,最后在弹出来的系统变量编辑对话框中的变量值的最前(或最后)加上C:\windows\system32;

然后命令行输入echo %path%,看看path的值。如果没有,重启一遍,然后在输入echo %path%。你就能看到了。

---------------------

【Windows】Git自动拉取的更多相关文章

  1. 通过宝塔webhook,实现git自动拉取服务器代码

    1.宝塔安装webhook,添加一条记录,脚本内容为: #!/bin/bash echo "" #输出当前时间 date --date='0 days ago' "+%Y ...

  2. python自动拉取备份压缩包并删除3天前的旧备份

    业务场景,异地机房自动拉取已备份好的tar.gz数据库压缩包,并且只保留3天内的压缩包文件,用python实现 #!/usr/bin/env python import requests,time,o ...

  3. git上拉取tag,识别最新tag在此版本上新增tag

    通过shell 脚本自动获取最新tag,并输入最新版本后,推到git上 # 拉取分支上现有的tags git fetch --tags echo -e "所有tag列表" git ...

  4. jenkins实现git自动拉取代码时替换配置文件

    jenkins实现从git上自动拉取源代码——>自动编译——>发布到测试服务器——>验证测试,这个大家应该都知道,但是关于源代码里的配置文件,可能就会有点头疼了, 一般测试都会自己的 ...

  5. xmake v2.5.2 发布, 支持自动拉取交叉工具链和依赖包集成

    xmake 是一个基于 Lua 的轻量级跨平台构建工具,使用 xmake.lua 维护项目构建,相比 makefile/CMakeLists.txt,配置语法更加简洁直观,对新手非常友好,短时间内就能 ...

  6. idea从git上拉取并管理项目

    1:idea从git上拉取项目 (1)FILE --> New --> Project from Version Control --> Git (2):输入项目的Https SSH ...

  7. git如何拉取指定分支的代码

    问题背景: 新项目还在开发阶段,没有正式对外发布,所以开发同事合并代码到develop上(或者其他名称分支上),而不是到master分支上 通过git拉取代码的时候,默认拉取的是master分支,如下 ...

  8. 【记录】Git pull(拉取),push(上传)命令整理(详细)

    前言:博主最近在学习git命令,因为git是一个非常好用的分布式版本管理工具,功能比svn强大,与SVN不同点是Git去中心化,每一个分支都是一个中心,并且支持本地仓库存储,像如今很多大公司都用git ...

  9. git提交拉取远程仓库

    https://gitee.com/ ---- 国内服务器 https:/github.com/ ---- 国外服务器 git init  ---- 初始化(创建主分支)仓库 git clone 拉取 ...

随机推荐

  1. vue项目跳转到外部链接

    vue项目中遇到一个打印的功能.思考之后决定点击按钮,跳转到一个HTML页面(后台写的),利用window.print()方法调用浏览器的打印的功能. 所以,现在的问题是,怎样跳转到外部链接.开发vu ...

  2. Anacond win10安装与介绍

    Anacond的介绍 Anaconda指的是一个开源的Python发行版本,其包含了conda.Python等180多个科学包及其依赖项. 因为包含了大量的科学包,Anaconda 的下载文件比较大( ...

  3. EasyPR源码剖析(8):字符分割

    通过前面的学习,我们已经可以从图像中定位出车牌区域,并且通过SVM模型删除“虚假”车牌,下面我们需要对车牌检测步骤中获取到的车牌图像,进行光学字符识别(OCR),在进行光学字符识别之前,需要对车牌图块 ...

  4. Java 字符编码(一)Unicode 字符编码

    Java 字符编码(一)Unicode 字符编码 Unicode(http://www.unicode.org/versions/#TUS_Latest_Version) 是一个编码方案,说白了希望给 ...

  5. java - Integer、int 、String相互转换总结

    一下子还真记不清这三种数据类型之间的转换方法,所以做个小笔记. public class Test03 { public static void main(String[] args) { //int ...

  6. nginx简介与配置

    nginx简介 nginx(发音同engine x)是一款轻量级的Web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like协议下发行. nginx由俄罗斯的程序 ...

  7. 实验十五 GUI编程练习与应用程序部署

    实验十五  GUI编程练习与应用程序部署 实验时间 2018-12-6 一:理论部分 1.Java 程序的打包:编译完成后,程序员将.class 文件压缩打包为 .jar 文件后,GUI 界面序就可以 ...

  8. 小程序跳转tabbar页面

    如果在app.json 配置tabbar 的时候配置了 跳转的页面的链接: 在其余的子页面,设置用navigator 进行跳转会发现 在tabbar 设置过的页面无法进行跳转,这时需要在navigat ...

  9. RPA答疑

    变量:部分主要对于工程中的变量进行管理和设置,支持手动拖拉至右侧画布 1全局变量:全局变量可以在整个工程中传递,被不同的子流程或函数进行调用,全局可见可调用 2 流程参数:只对子流程设置传入参数,供子 ...

  10. s6-9 TCP 定时器

    TCP 定时器管理  重传定时器(retransmission timer,Positive ackn. with retransmit) 最重要的定时器 TCP 定时器管理  持续定时器(per ...