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: ...
随机推荐
- 推理机Jess,Racer,Jena
推理机 Jess(Java Expert Shell System)是基于Java语言的CLISP推理机. CLISP是基于产生式的前向推理引擎,许多上层的推理任务,都要映射到这个推理引擎上来运行. ...
- java中外部类和内部类的访问控制符区别
外部类只有两种访问控制符,即public和default(包访问控制级别).原因:外部类的上一级程序单元是包,所以它只有两种作用域:同一个包内和任何位置,这样只需要用public和default即可, ...
- Redis安装以及Java客户端jedis连接不上相关问题解决
安装步骤 1.由于Redis是由C 语言编写的 所以虚拟机编译需要C的编译环境 用命令 yum install gcc-c++ 2.用SFTP上传Redis安装包并解压 3.进入Redis源码目录 b ...
- VBA在WORD应用中如何将格式应用于选定内容
下列示例使用 Selection 属性将字符和段落格式应用于选定文本.使用 Font 属性获得字体格式的属性和方法,使用 ParagraphFormat 属性获得段落格式的属性和方法. Sub For ...
- WeX5学习笔记-02
1.安装wex5,下载地址 http://wex5.com WeX5是绿色免安装的,解压即可直接使用.注意:不能解压到含中文.空格和特殊字符 的目录下, 例如:Program Files,是不可以的, ...
- openstack常用命令-neutron篇
列出当前租户所有的网络 neutron net-list 列出所有租户的所有网络(需要管理员权限) neutron net-list --all-tenants 创建一个网络(vlan/flat) n ...
- Wpf binging(一) 基础
1.C# 代码后台绑定 分别步骤为 1. 准备数据源 2.实例化 binging对象 以及设置 该对象的 数据源 和数据源的访问路径(也就是该数据源的什么属性绑定) 3. 把前端ui控件的 Tex ...
- 求助,我在安装SQL sever2016时遇到了这种情况
哪位大佬能告诉我这怎么解决?多谢!
- 【Python】关于decode和encode
#-*-coding:utf-8 import sys ''' *首先要搞清楚,字符串在Python内部的表示是unicode编码,因此,在做编码转换时,通常需要以unicode作为中间编码, 即先将 ...
- js中 setTimeout延时0毫秒的作用
经常看到setTimeout延时0ms的javascript代码,感到很迷惑,难道延时0ms和不延时不是一个道理吗?后来通过查资料以及实验得出以下两个作用,可能还有作用我还不知道,希望得知的朋友在后面 ...