window、linux系统与linux服务器之间使用svn同步及自动部署代码的方法
摘要:
在家用PC,在公司用办公电脑对一个项目的代码进行修改时,会遇到代码同步的问题。本文讲解了代码同步及自动部署的解决办法。
实现方法:
1.首先在linux服务器上和linux上安装svn(sudo yum install svn)。
2.然后在服务上创建一个版本库并配置用户及权限,这点网上的方法多的是,自行百度。
3.在linux客户端使用svn命令进行同步,具体如下:
svn co svn://(ip地址) (保存文件的文件夹) ##检出版本库。第一次要输入用户名和密码。
将需要同步的代码(工程)复制到检出的文件夹下。
svn add * ##添加文件,这时候可能会出现 svn: E200009: 因为一些目标已经版本化,所以不能增加全部目标,执行$ svn add * --force强制添加。
然后执行$ svn commit -m "log"即可上传到库里面并自动部署(自动部署在下面讲解) ##log 为修改日志
4.window下就简单了,直接下载SVN,管家里就有。安装好后在右键菜单里就有SVN checkout 等选项,选择检出,然后输入用户名和密码就OK了。
自动部署方法:
1.进入linux下SVN的版本库,找到Hooks文件夹,进入。这里的文件都是在某个操作后会自动执行的一些脚本。
2.执行命令 cp post-commit.tmpl post-commit
3.执行命令 chmod 777 post-commit 修改文件权限
4.执行命令 vim post-commit 打开文件,清除存在的内容,添加下列语句:
export LANG=zh_CN.UTF-8 ##设置编码方式
SVN=/usr/bin/svn ##设置svn路径,注意不是项目路径
APP=/root/test ##设置目标路径,就是同步代码之后你希望它自动部署到哪
${SVN} update ${APP} --username (你的用户名) --password (你的密码)
5.大功告成。
ps:第一次写博,欢迎指正
window、linux系统与linux服务器之间使用svn同步及自动部署代码的方法的更多相关文章
- 在linux服务器上装svn版本管理,自动部署代码到项目
在linux服务器上装svn版本管理,自动部署代码到项目 http://bbs.aliyun.com/read/9715.html?spm=5176.7114037.1996646101.1.W3zw ...
- 在linux服务器上装svn版本管理,自动部署代码到web项目
在linux服务器上装svn版本管理,自动部署代码到项目 1.安装svn服务器端 yum install subversion 从镜像下载安装svn服务器端 中间会提示是否ok,输入y,确认 ...
- Linux系统搭建Red5服务器
Linux系统搭建Red5服务器 Red5 是 支持Windows,Linux等多平台的RTMP流媒体服务器,Windows下搭建相对容易,图形界面操作比较简单,Linux服务器的环境下没有图形界面, ...
- Linux系统在开机的时候自动启动SVN
Linux系统在开机的时候自动启动SVN 1.创建执行脚本svn.sh(/root路径下,随便哪个路径),其内容很简单,如下: #!/bin/bash svnserve -d --listen ...
- rsync配置两台服务器之间的文件备份(同步)
rsync配置两台服务器之间的文件备份(同步) 前情提要 环境: 192.168.1.2 主服务器 centos 7.7 192.168.1.3 备份服务器 centos 7.7 rsync 安装(两 ...
- jenkins自动部署代码到多台服务器
下面讲一下如何通过一台jenkins服务器构建后将代码分发到其他的远程服务器,即jenkins自动部署代码到多台服务器. 1.下载 pulish over ssh 插件 2.系统管理 -> 系统 ...
- Linux服务器之间免密同步文件、重启R服务
机器:ML-01/ML-02/ML-03 需求: 1.在ML-01上自动将文件同步至ML-02/ML-03 2.在ML-01上通过脚本重启ML-02/ML-03上的R服务 说明:以下示例中,ML-02 ...
- 详解Linux系统下PXE服务器的部署过程
在大规模安装服务器时,需要批量自动化方法来安装服务器,来减少日常的工作量. 但是批量自动化安装服务器的基础是网络启动服务器(bootserver). 下面我们就介绍一下 网络启动服务器的 安装和配置方 ...
- Linux rsync配置用于服务器之间传输大量的数据
Linux的rsync 配置,用于服务器之间远程传大量的数据 [教程主题]:rsync [课程录制]: 创E [主要内容] [1] rsync介绍 Rsync(Remote Synchronize ...
随机推荐
- Gitlab-CI持续集成之Runner配置和CI脚本
p.MsoNormal,li.MsoNormal,div.MsoNormal { margin: 0cm; margin-bottom: .0001pt; text-align: justify; f ...
- Day-6: 函数式编程
函数式编程就是封装成一个个函数,一次调用来完成复杂任务. 函数式编程的一个特点是,允许把函数本身作为参数传入另一个函数,还允许返回一个函数! 高阶函数 高阶函数就是将函数的变量名作为参数传入,内部再对 ...
- 在htnl中,<input tyle = "text">除了text外还有几种种新增的表单元素
input标签新增属性 <input list='list_t' type="text" name='user' placeholder='请输入姓名' va ...
- 垃圾收集器Serial 、Parallel、CMS、G1
详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt378 这里介绍4个垃圾收集器,如果进行了错误的选择将会大大的影响程序的性能. ...
- Motion control encoder extrapolation
Flying Saw debug Part1 Encoder extrapolation Machine introduction A tube cutting saw, is working for ...
- python __name__ 变量的含义
python __name__ 变量的含义 if __name__ == '__main__': tf.app.run() 当python读入程序时,会初始化一些系统变量.如果当前程序是主程序,__n ...
- C# yield return用法
本文实例讲述了C#中yield return用法,并且对比了使用yield return与不使用yield return的情况,以便读者更好的进行理解.具体如下: yield关键字用于遍历循环中,yi ...
- Python 进程与线程小随笔
Process 涉及模块:multiprocessing Process p = Process() p.start() p.join() from multiprocessing import Pr ...
- vue中组件的四种方法总结
希望对大家有用 全局组件的第一种写法 html: <div id = "app"> <show></show></div> js: ...
- Java课程设计+购物车WEB页面
1. 团队名称(keke) 徐婉萍:网络1511 201521123006 2. 项目git地址 3. 项目git提交记录截图 4. 项目功能架构图与主要功能流程图 项目功能架构图 项目主要功能流程图 ...