zoukankan      html  css  js  c++  java
  • git 与 ftp 共同工作

    因git主要用于版本管理,代码同步方面,因临时调试等原因,需要使用ftp上传文件。

    但因为git的账户为ubuntu,ftp是虚拟账户overlord,  www-data是apache的用户

    导致文件权限不同,出现的问题主要有:

    1.ftp无法覆盖已有的文件

    2.git无法更新ftp上传的文件

    解决方案:

    1. 应该先创建一个目录,用于放置代码的。需要对这个目录进行一些初始化操作, 
      usermod -aG overlord ubuntu    # 把用户ubuntu  添加到overlord用户组 
      mkdir testcode 
      chown overlord.overlord testcode/ 
      chmod 775 testcode/
      chmod g+s testcode/            # 文件夹下新文件夹继承上级用户组  

      修改vsftpd的账户的配置

      local_umask=002

      查看 umask,确保是0002--如果不是,使用   umask 002  查看ubuntu用户的umask  

      $ umask
      $ 0002
    2. 首先,第一次代码上传建议使用git克隆clone一份到服务器,这样的好处是开发人员可以预先整理一次代码,筛选需要版本管理的代码
      git clone https://git.dxgz.work/zhuangdx/timer_deleter.git
      ubuntu@ubuntu:./timer_deleter$ ll
      total 44
      drwxrwsr-x 5 ubuntu   overlord 4096 Mar 21 17:44 ./
      drwxrwsr-x 3 overlord overlord 4096 Mar 21 17:44 ../
      -rw-rw-r-- 1 ubuntu   overlord  636 Mar 21 17:44 add_cron_td_job.sh
      drwxrwsr-x 2 ubuntu   overlord 4096 Mar 21 17:44 conf/
      drwxrwsr-x 8 ubuntu   overlord 4096 Mar 21 17:44 .git/
      -rw-rw-r-- 1 ubuntu   overlord    5 Mar 21 17:44 .gitignore
      -rw-rw-r-- 1 ubuntu   overlord 4393 Mar 21 17:44 handle.py
      -rw-rw-r-- 1 ubuntu   overlord 1065 Mar 21 17:44 LICENSE
      -rw-rw-r-- 1 ubuntu   overlord 1651 Mar 21 17:44 README.md
      -rw-rw-r-- 1 ubuntu   overlord    0 Mar 21 17:44 run.log
      drwxrwsr-x 2 ubuntu   overlord 4096 Mar 21 17:44 utils/

      上面可以看出来,用户组和所有者的权限一致。这样在 overlord组的用户都可以进行文件读写操作

    3. ftp属于overlord,这样git与ftp进行文件操作,都不会因权限问题而无法操作。

      


    以上  

  • 相关阅读:
    利用javabean完成注册效果
    DAO设计模式例子
    SmartUpload使用和简介
    js和jquery通过this获取html标签中的属性值
    细说引用类型string StringBuilder class的特点
    WinForm控件自动提示你定义相似的项值
    利用Assembly动态加载程序集
    C# 数据结构与算法系列(五) 队列
    ASP.NET最简单的用户权限管理
    C# 数据结构与算法系列(三) 线性表之链表
  • 原文地址:https://www.cnblogs.com/duoxuan/p/10573311.html
Copyright © 2011-2022 走看看