相关疑难解决方法(0)

Windows上的Git文件权限

我已经阅读了一些关于Git文件权限的问题,我仍然有点困惑.我在GitHub上有一个来自另一个的回购.合并后,它们应该是相同的.然而:

$ git diff --summary origin/epsilon master/epsilon
 mode change 100644 => 100755 ants/dist/sample_bots/csharp/compile.sh
 mode change 100644 => 100755 ants/dist/starter_bots/coffeescript/MyBot.coffee
 mode change 100644 => 100755 ants/dist/starter_bots/coffeescript/ants.coffee
 mode change 100644 => 100755 ants/util/block_test.sh
 mode change 100644 => 100755 manager/mass_skill_update.py
 mode change 100644 => 100755 worker/jailguard.py
 mode change 100644 => 100755 worker/release_stale_jails.py
 mode change 100644 => 100755 worker/start_worker.sh
Run Code Online (Sandbox Code Playgroud)

我已经尝试更改文件权限,但它不会改变差异结果.

windows git diff file-permissions

157
推荐指数
6
解决办法
8万
查看次数

自动将"git update-index --chmod = + x"应用于可执行文件

我经常将bash脚本添加到我的git存储库中,并且脚本在之前的linux文件系统中具有可执行权限git add.但是,在将添加的文件推送到远程存储库并拉入另一个位置之后,这些文件将显示为具有非可执行权限.似乎有两种方法可以解决问题:

1. chmod u+x $script 
   git commit -am "fixing the script permissions... again..."
Run Code Online (Sandbox Code Playgroud)

要么

2. git update-index --chmod=+x $script
Run Code Online (Sandbox Code Playgroud)

有没有一种方法可以让git简单地查看脚本上的文件权限git add,并认识到"嘿,这是一个可执行文件!" 并直接使用exectuable权限将其添加到存储库?

git executable file-permissions

55
推荐指数
4
解决办法
5万
查看次数

android环境使用docker和bitbucket管道

我是Bitbucket管道(Beta)和docker的新手.没有以前的CI集成经验

我跟着这个问题,但对初学者没有明确的描述

我正在尝试使用docker容器在Android项目的Bitbucket管道中设置持续集成(CI)

我想在这个容器中使用我以前的android项目

我遵循的步骤

第1步.已安装的Docker软件工具.成功安装.

第2步.成功创建虚拟机

第3步.从Kitematic(Beta)Uber/Android-Build-Environment创建容器

成功的Docker已满

第4步.使用成功构建项目

$ eval "$(docker-machine env default)"

$ docker build -t uber/android-build-environment .
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

第5步.改变直接工作到android项目

步骤6.运行此命令时出现问题

docker run -i -v $PWD:/project -t uber/android-build-environment /bin/bash /project/ci/build.sh
Run Code Online (Sandbox Code Playgroud)

错误来了:

/bin/bash: /project/ci/build.sh: No such file or directory

错误图片

Docker机器细节

docker-machine ls
NAME      ACTIVE   DRIVER       STATE     URL                         SWARM   DOCKER    ERRORS
default   -        virtualbox   Running   tcp://192.168.99.100:2376           v1.12.1
Run Code Online (Sandbox Code Playgroud)

Docker服务

docker service ls
Run Code Online (Sandbox Code Playgroud)

Docker Machine ENV

export DOCKER_TLS_VERIFY="1"
export DOCKER_HOST="tcp://192.168.XX.XXX:XXXX"
export …
Run Code Online (Sandbox Code Playgroud)

continuous-integration android continuous-deployment bitbucket-pipelines

24
推荐指数
3
解决办法
4683
查看次数

使用openshift部署本地django应用程序

我用django构建了一个webapp.为了主持它,我正在尝试使用openshift,但是很难让任何工作.对此,似乎缺乏一步一步的措施.到目前为止,我有git工作正常,该应用程序适用于本地开发环境,我已成功在openshift上创建了一个应用程序.

在openshift创建URL后,我只需获得标准页面"欢迎使用您的Openshift应用程序".

我已经按照https://developers.openshift.com/en/python-getting-started.html#step1尝试更改wsgi.py文件.将其更改为hello world,推送它然后我仍然获得openshift默认页面.

是否有一个很好的综合资源可以让本地Django应用程序在Openshift上运行?我在谷歌上找到的大部分内容都只是示例应用程序,这些应用程序并不像我已经构建的那样有用.

python git django openshift

21
推荐指数
2
解决办法
1万
查看次数

在 .git/hooks/pre-commit 中共享代码的好方法

有没有什么好方法可以分享代码 .git/hooks?

我唯一能想到的是创建命令行工具,并从每个脚本中调用这些工具 .git/hooks/*

git githooks

6
推荐指数
2
解决办法
2910
查看次数

Elastic Beanstalk 删除配置更改时生成的文件

在 Elastic Beanstalk 上,使用基于 AWS Linux 2 的环境时,更新环境的环境属性(即环境变量)会导致所有生成的文件被删除。作为此更新的一部分,它也不会运行container_commands。

例如,我有一个 Django 项目,其中包含collectstatic容器命令:

05_collectstatic:
  command: |
    source $PYTHONPATH/activate
    python manage.py collectstatic --noinput --ignore *.scss
Run Code Online (Sandbox Code Playgroud)

这会将静态文件收集到一个称为staticfiles部署一部分的文件夹中。但是当我更新环境变量时,staticfiles它被删除了。这会导致应用程序上的所有静态文件被破坏,直到我重新部署为止,这是极其不可取的。

在基于 AWS Linux 1 的环境中不会发生此行为。差异似乎在于,基于 AWS Linux 2 的环境/var/app/current在环境变量更改期间会替换该文件夹,而基于 AWS Linux 1 的环境则不会执行此操作。

我该如何解决?

研究

我可以通过监视来验证在环境变量更改期间容器命令没有运行/var/log/cfn-init.log;没有新条目添加到此日志中。

滚动更新类型“禁用”和“不可变”都会发生这种情况。

即使我将环境命令转换为平台钩子,也会发生这种情况,尽管更新环境属性时钩子被列为正在运行。

在我看来,有两种潜在的解决方案,但我不知道其中任何一个的 Elastic Beanstalk 设置:

  1. 让环境变量更改保留/var/app/current而不是替换它。
  2. 让环境变量更改运行容器命令。

有关容器命令的 Elastic Beanstalk 文档表示“仅在环境创建和部署期间执行仅领导者容器命令,而每次配置或更新实例时都会执行其他命令和服务器自定义操作。” 这是 Elastic Beanstalk 中的错误吗?

相关问题:EB:在配置更改时触发容器命令/部署脚本

amazon-web-services amazon-elastic-beanstalk

6
推荐指数
1
解决办法
1084
查看次数

Git:使用可执行文件

我有一个项目,其中有一个.sh文件,一旦被其他人拉取,它就必须处于可执行模式。现在,我已经在本地计算机上更改了其权限。不过,我希望它也作为可执行文件推送/拉取,以便其他用户不必chmod一直运行命令。

我已被告知两种可能的解决方案:.gitattributesgit update-index --chmod=+x script.sh,但是考虑到我的情况,我不确定我到底应该遵循什么。

我在这里看到了这篇文章,在那里看到了这个答案,我在想哪一个更适合我的情况。我希望这个过程自动完成,而不是每次都由用户添加。

有什么想法吗?

linux git bash executable gitattributes

5
推荐指数
1
解决办法
4171
查看次数

为什么Travis CI会编辑我的文件?

我是Travis CI的新手,我只是想了解为什么以及这里发生了什么.我尽我所能遵循他们的文档中的设置说明.我得到的是:

  • 我在Github上的Rails代码
  • Travis CI在将其推送到github分支主机后立即构建我的仓库.
  • 一个Heroku应用程序,如果构建成功,Travis CI将部署代码.

我无法理解的是为什么我在构建完成后得到这个:

HEAD detached from 2a3b308
Changes not staged for commit:
.......
modified:   script/travis.sh

Untracked files:
  (use "git add <file>..." to include in what will be committed)

   vendor/bundle/

no changes added to commit (use "git add" and/or "git commit -a")
Run Code Online (Sandbox Code Playgroud)

before_install: - chmod +x script/travis.sh在我的.travis.yml中做了一个,然后chmod +x script/travis.sh进入我的构建日志.我有git版本2.7.4

为什么我的script/travis.sh编辑?我应该添加这些更改还是我的设置有问题?在script/travis.sh我已经得到了构建之前要执行一些小的命令,设置自己的Github的身份和.

为什么要vendor/bundle/添加此文件夹?

git ruby-on-rails heroku travis-ci

5
推荐指数
1
解决办法
410
查看次数

如何让git checkout文件权限模式为777?

我以前root运行git的时候,每次checkout的时候文件权限模式都变成了root 644,也就是说apache不能删除、修改。
然后我决定让GIT在有权限的情况下签出文件777。我知道 set umask 000(默认为022)可以做到这一点,但我不想更改我的 centos 设置。
怎么做?

git

5
推荐指数
1
解决办法
1万
查看次数

Elastic Beanstalk 平台挂钩失败并显示“权限被拒绝”

部署 Elastic Beanstalk 应用程序时,我的一个挂钩因“权限被拒绝”而失败。我得到以下内容/var/log/eb-engine.log

[信息] 运行平台挂钩:.platform/hooks/predeploy/collectstatic.sh

[错误] 执行命令 [app-deploy] - [RunAppDeployPreDeployHooks] 期间发生错误。停止运行该命令。错误:命令 .platform/hooks/predeploy/predeploy.sh 失败,错误 fork/exec .platform/hooks/predeploy/predeploy.sh:权限被拒绝

我该如何解决?

amazon-web-services amazon-elastic-beanstalk

5
推荐指数
1
解决办法
3220
查看次数