是否可以在传输到远程存储库之前通过'git push'自动加密文件?并在'git pull'时自动解码它们.
即,如果我有一些远程服务器与git存储库共享访问,我不希望我们的项目没有权限被盗...也许在推和拉之前有一些特殊的git-hooks?
我想通过自动创建.gitignore,README,LICENSE和其他git init命令文件来优化我的git工作流程.
要做到这一点,我git init在http://git-scm.com/docs/git-init的 RTFM,它告诉我做以下其中一项:
git init --template=<template_directory>,但这很麻烦.init.templatedir配置变量.现在我们正在谈论!所以我sudo mkdir /usr/share/git-core/templates/my_template和touch它中的一些文件,然后我vim ~/.gitconfig和追加:
[init]
templatedir = /usr/share/git-core/templates/my_template
Run Code Online (Sandbox Code Playgroud)
并git config -l告诉我:
...
init.templatedir =/usr/share/git-core/templates/my_template
...
对自己感到高兴,我去了我的开发游乐场目录,并且:
$ git init
Initialized empty Git repository in /the/current/directory
$ ls -a
. .. .git
Run Code Online (Sandbox Code Playgroud)
糟糕......文件在哪里?:(
快速检查:
$ ls -a /usr/share/git-core/templates/my_template
. .. .gitignore LICENSE README.md
$ git --version
git version 1.8.2.1
Run Code Online (Sandbox Code Playgroud)
它似乎$ git init …
是否有一种简单的方法为不同的遥控器设置不同的.gitignore文件?我有一个存储库,我向Heroku和Github推送.我需要Heroku的database.yml,但不希望将某些信息推送到Github.所以我需要为每个遥控器使用不同的.gitignore文件.
我尝试过两个独立的分支,一个忽略database.yml,另一个不忽略.问题是,当我签出heroku分支并返回我的github分支时,整个database.yml文件都消失了.
有小费吗?
我正在使用一个存储网站数据的git存储库.它包含一个.htaccess文件,其中包含一些适用于生产服务器的值.为了让我在网站上工作,我必须更改文件中的一些值,但我从不想提交这些更改,否则我将破坏服务器.
由于.gitignore不适用于跟踪文件,我使用"git update-index --assume-unchanged .htaccess"来忽略我在文件中的更改,但是这只能在切换分支之前有效.一旦您更改回原始分支,您的更改就会丢失.
有没有办法告诉git忽略文件中的更改并在更改分支时不管它?(就像文件未被跟踪一样.)
我们使用Git的大多数我们建立在我们的商店的web应用程序,尽管应用程序本身使用多种技术(PHP,Rails的,等等),我们通常对每个站点分期和生产服务器.典型地,这些服务器具有不同的套数据库证书的以及不同的基于环境的配置设置(例如高速缓存).我们的工作流程一般包括保持每个项目中的两个的Git分支:主人,这反映了生产服务器,并分期,这反映了分期.新功能是在分期(或支行)开发和完成和部署后合并回主.
我的问题是关于维护特定于分支和环境的配置文件的最佳方法.我在这里和这里看到了类似问题的答案,而且都没有真正满足.主要的两种方法似乎是a)使用.gitignore排除将配置文件保留在git的权限范围之外,或b)编写反射的,环境感知的代码,该代码确定例如基于主机名使用什么数据库凭证.我的问题是a)它只允许一组配置文件存在于代码库中(与当前分支无关),因此其他环境的配置文件会丢失.b)另一方面,似乎只需要以与应用程序功能无关的方式对代码库进行不必要的修改.
理想情况下,我想要一种方法来"锁定"某个分支内的配置文件,这样每当我签出master时,我都会获得主配置文件,每当我检查暂存时,我都会获得暂存配置文件.此外,将分段合并到主服务器不应以任何方式影响主配置文件.到目前为止,我们通过在git root之外包含包含特定于环境的配置文件的文件夹并在部署时手动将适当的文件移动到代码库中来解决这个问题,但这当然是不必要的hackish(并且可能是危险的).
有没有办法用git完成这个?
谢谢你的考虑!
git deployment development-environment web-deployment-project configuration-files
所以我一直在与朋友一起开展游戏,我们遇到了.yyp文件的持续问题.
起初我们把.yyp文件放在git控件下,但是每当我们其中一个人拉下对方的更改时,游戏将无法运行,因为这个.yyp文件中似乎是特定于操作系统的设置.
所以很自然地我们将这个文件添加到你的文件中.gitignore并继续我们的生活,直到我们注意到我们其中一个添加的对象不会出现在另一个环境中.进一步的挖掘表明,该.yyp文件还存储了添加到游戏和/或舞台的JSON对象列表.
有没有人成功地在OSX和Windows之间使用GMS2项目?如何实现这一目标?
提前致谢
所以我可以做这样的事情:停止跟踪 git 中的文件(不删除它们)
但这只会影响我的 git。
远程存储库中已经跟踪了一些默认设置文件,如何在不删除文件的情况下删除对该文件的跟踪?我不想从远程存储库中删除它,但该文件是运行应用程序所必需的,因此任何进行全新安装的人都需要该文件,因此他们在执行 git clone 时应该拥有该文件。
但是对于开发来说,任何开发人员都可以对文件进行更改,但是这些更改不应该被跟踪,只有默认值应该保留在远程存储库中。
我尝试将文件添加到 .gitignore 列表,但它不起作用 - 因为它已经被跟踪了,我假设?我希望每个人都有那个文件,但每个人都不应该能够对文件进行更改。
那么我该怎么做呢?
嗨,
我想隐藏
DATABASE_NAME = ''
DATABASE_USER = ''
DATABASE_PASSWORD = ''
DATABASE_HOST = ''
Run Code Online (Sandbox Code Playgroud)
在github中检查时,默认Django settings.py文件的第13行到第17行.
我仍然想要检查它,因为我不时添加修改.我只想将这四行始终设置为空.
git ×8
github ×2
deployment ×1
django ×1
encryption ×1
gitignore ×1
gml ×1
heroku ×1
python ×1
templates ×1