git 与 ftp 共同工作
因git主要用于版本管理,代码同步方面,因临时调试等原因,需要使用ftp上传文件。
但因为git的账户为ubuntu,ftp是虚拟账户overlord, www-data是apache的用户
导致文件权限不同,出现的问题主要有:
1.ftp无法覆盖已有的文件
2.git无法更新ftp上传的文件
解决方案:
- 应该先创建一个目录,用于放置代码的。需要对这个目录进行一些初始化操作,
usermod -aG overlord ubuntu # 把用户ubuntu 添加到overlord用户组
mkdir testcode
chown overlord.overlord testcode/
chmod testcode/
chmod g+s testcode/ # 文件夹下新文件\夹继承上级用户组修改vsftpd的账户的配置
local_umask=
查看 umask,确保是0002--如果不是,使用 umask 002 查看ubuntu用户的umask
$ umask
$ - 首先,第一次代码上传建议使用git克隆clone一份到服务器,这样的好处是开发人员可以预先整理一次代码,筛选需要版本管理的代码
git clone https://git.dxgz.work/zhuangdx/timer_deleter.git
ubuntu@ubuntu:./timer_deleter$ ll
total
drwxrwsr-x ubuntu overlord Mar : ./
drwxrwsr-x overlord overlord Mar : ../
-rw-rw-r-- ubuntu overlord Mar : add_cron_td_job.sh
drwxrwsr-x ubuntu overlord Mar : conf/
drwxrwsr-x ubuntu overlord Mar : .git/
-rw-rw-r-- ubuntu overlord Mar : .gitignore
-rw-rw-r-- ubuntu overlord Mar : handle.py
-rw-rw-r-- ubuntu overlord Mar : LICENSE
-rw-rw-r-- ubuntu overlord Mar : README.md
-rw-rw-r-- ubuntu overlord Mar : run.log
drwxrwsr-x ubuntu overlord Mar : utils/上面可以看出来,用户组和所有者的权限一致。这样在 overlord组的用户都可以进行文件读写操作
- ftp属于overlord,这样git与ftp进行文件操作,都不会因权限问题而无法操作。
以上
git 与 ftp 共同工作的更多相关文章
- 使用git代替FTP部署代码到服务器的例子
这篇文章主要介绍了使用git代替FTP部署代码到服务器的例子,这种方法可以节省流量.节省时间,需要的朋友可以参考下 本地开发完成后,通常会在服务器上部署,有人会使用ftp,有人会使用scp, ftp和 ...
- 使用Git代替FTP进行虚拟主机的代码管理
为什么要使用Git代替FTP的原因: 由于本人菜鸟+穷屌,玩不起VPS和其他大牌的云主机,所以呢就只能在景安(这不是广告..)申请了免费的虚拟主机,就想着自己玩玩而已,免费的嘛,空间流量什么的就不讨论 ...
- git总结一、工作中常用基础命令
首先来了解两个概念: 工作区:比如你的项目目录 暂存区:git和其他版本控制系统的不同之处就是有这个暂存区的概念. .git不是工作区,而是git 版本库,在版本库中存放着很多东西,比如暂存区(sta ...
- git宝典—应付日常工作使用足够的指北手册
最近公司gitlab又迁移,一堆git的命令骚操作,然鹅git命令,感觉还是得复习下——其实,git现在界面操作工具蛮多,比如intellij 自带的git操作插件就不错,gitlab github ...
- Git多人协作工作流程
前言 之前一直把Git当做个人版本控制的工具使用,现在由于工作需要,需要多人协作维护文档,所以去简单了解了下Git多人协作的工作流程,发现还真的很多讲解的,而且大神也已经讲解得很清楚了,这里就做一个简 ...
- FTP服务工作原理
1. FTP协议 什么是FTP呢?FTP 是 TCP/IP 协议组中的协议之一,是英文File Transfer Protocol的缩写. 该协议是Internet文件传送的基础,它由一系列规格说明文 ...
- Git 保存和恢复工作进度(stash)
感谢原文作者:滑稽的命运 原文链接:https://www.jianshu.com/p/1e65e938f93c 作用: 封存工作区与暂存区已经被Git版本控制,但没有提交(Commit)版本库的文件 ...
- 项目git commit时卡主不良代码:husky让Git检查代码规范化工作
看完 <前端规范之Git工作流规范(Husky + Commitlint + Lint-staged) https://www.cnblogs.com/Yellow-ice/p/15349873 ...
- git-ftp 用git管理ftp空间
ftp管理不能实现版本控制,而且多电脑工作时,同步很成问题. git-ftp可以完美的解决问题 下面是我的趟坑之路,本机的环境是win10,首先你的机器得装有git. git-ftp的地址https: ...
随机推荐
- javascript数据加减问题
需要parseInt把获取到的html(),text()的值转换为数字型,然后进行加减乘除操作就可以了:
- oracle入门之基本数据类型
1.char(size)存放字符串,它最大可以存放2000个字符,是定长. 举例说明: create table test1(name char(32));//test1表中的name字段最多存放32 ...
- WINDOWS SERVER 2016 IE使用FLASH PLAYER的方法
Windows Server 2016出于安全的考虑,默认禁用了Flash Player.把Windows Server 2016作为日常操作系统的童鞋会发现,IE里完全没有Flash Player这 ...
- 2018-2019-2 20175224 实验二《Java面向对象程序设计》实验报告
一.实验报告封面 课程:Java程序设计 班级:1752班 姓名:艾星言 学号:20175224 指导教师:娄嘉鹏 实验日期:2019年4月17日 实验时间:13:45 - 15:25 实验序号:24 ...
- Javascript设计模式记录
prototype与面向对象取舍 使用prototype原型继承和使用面向对象,都可以实现闭包的效果.那么这两个的选择点,就是方法会不会产生多个实例. 例如,我们需要做一个闭包数组,并给他提供一个添加 ...
- Java IO总结
- Shell 有类型变量
1.通过 declare 和 typeset 命令 declare 和 typeset 两者等价 declare 和 typeset 都是用来定义变量类型的 下面以 declare 进行总结 2.de ...
- 安装linux虚拟机配置静态ip(桥接模式)
1.centOs7.VMware Workstation14 2.常规新建虚拟机操作后,来到选择连接模式: 这里选择桥接模式,复制物理网络连接状态(就是把实际的主机网卡信息拷贝一份,让虚拟机也有一份和 ...
- Python 语法2
文档字符串,这个只能是用于紧跟函数第二行的内容. 输出文档说明的部分,代码格式是 函数名称.(dot)__(双下划线)doc__(双下划线) ///////////////////////////// ...
- IOS 极光推送自定义通知遇到的一些坑
主要方法: //自定义推送 - (void)networkDidReceiveMessage:(NSNotification *)notification { NSDictionary * userI ...