原文: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. 201771010134杨其菊《面向对象程序设计java》第九周学习总结

                                                                      第九周学习总结 第一部分:理论知识 异常.断言和调试.日志 1.捕获 ...

  2. qt布局管理-缩放、多窗口切换

    关于缩放的布局 所有控件要求与主窗口同时缩放,那么在所有控件设置好布局后,最后点击最外侧的主控件,选择水平布局或者垂直布局即可. 另外每个空间的属性可更改,如SizePolicy用于设置空间是否可缩放 ...

  3. JSP 页面中插入图片

    第一步 在 JSP 页面中插入图片 EL 表达式 ${pageContext.request.contextPath } 的值为当前的项目名称 <html> ... <body> ...

  4. ----关于统计字符出现次数的JS循环以及indesxOf函数----

    以下将会通过JS循环判断字符“banana”出现次数 以及调用indexOf中的函数来实现统计   <!DOCTYPE html> <html> <body> &l ...

  5. Python Day 13 装饰器

    阅读目录   内容回顾 函数嵌套的定义 global.nonlocal关键字 闭包及闭包的运用场景 开放封闭原则 装饰器 一个函数被多次装饰 ##内容回顾 1.函数对象:函数名 => 存放的是函 ...

  6. #实验三 敏捷开发与XP实践---实验报告

    一.实验三 敏捷开发与XP实践-1 1.实验要求 -实验三 敏捷开发与XP实践 http://www.cnblogs.com/rocedu/p/4795776.html, Eclipse的内容替换成I ...

  7. 人工智能&物联网开发的目录

    走进嵌入式开发的世界,企业级项目课程让你达到企业嵌入式应用开发要求.名师在线答疑,解决疑难.科学评测体系,系统评估学习.核心项目实........ 30 门课程 241小时12分钟 824 人学习 学 ...

  8. SAP开发系统中开发和配置客户端请求号变更

    假如102为开发客户端,800为配置客户端 正常操作,创建开发请求,应该在102客户端里去创建,但由于操作疏忽开发请求建在了800客户端,如何调整请求到102? 调整步骤:登陆102,SE09找到80 ...

  9. Runnable与Callable区别

    相同点: 两者都是接口:(废话) 两者都可用来编写多线程程序: 两者都需要调用Thread.start()启动线程: 不同点: 两者最大的不同点是:实现Callable接口的任务线程能返回执行结果:而 ...

  10. 关于n维和n-1维欧式空间

    我们从小就说,"点动成线,线动成面,面动成体",其中的空间的概念到底是啥?之前没有好好想过,在机器学习中多次遇到"空间"."超平面",&qu ...