相关疑难解决方法(0)

git可以在空格和制表符之间自动切换吗?

我在我的python程序中使用制表符缩进,但我想与使用空格的人合作(使用git).

有没有办法让git在推/取时自动在空格和制表符之间进行转换(例如,4个空格= 1个制表符)?(类似于CR/LF转换)

git tabs indentation

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

当你的项目中有密钥时,如何才能推送到GitHub?

我正在尝试将一个全新的,空的Rail 3.0.4项目推送到GitHub,但只是意识到cookie会话存储有一个密钥:

config/initializers/secret_token.rb

NewRuby192Rails304Proj::Application.config.secret_token = '22e8...'
Run Code Online (Sandbox Code Playgroud)

那么我们怎样才能避免它被推向GitHub呢?我们可以忽略这个文件(使用.gitignore),但没有这个文件,Rails应用程序根本不会运行(并且不是一个完整的Rails应用程序).或者通常,其他文件或框架也可能包含包含密钥的文件.在这种情况下,推送到GitHub时应该如何处理?

git github secret-key

24
推荐指数
2
解决办法
9783
查看次数

处理生产配置中的密码以进行自动部署

我在这里看到了相关的问题,但它们似乎并没有完全回答我的需要.

我们使用Powershell脚本来部署我们的应用程序,并且大多数环境(UAT等)的配置文件中的密码等信息都是纯文本.这不是一个大问题,但是当谈到PREPROD和PROD时,这是一个大问题.因此我们在配置中有一些标记,如"{{prompt-password}}",它将提供登录对话框(Get-Credential),进行部署的人员可以输入凭证并继续部署.

但这对自动部署没有实际帮助(意味着通过TeamCity等工具一键部署)

我应该使用非对称加密(http://msdn.microsoft.com/en-us/library/as0w18af.aspx),其中密码使用公钥加密,在配置中输入,并存储私钥(如上所述)这里http://msdn.microsoft.com/en-us/library/tswxhw92.aspx)在"代理"中(如在TeamCity将触发部署的VM中,并且具有受限访问权限)运行自动部署并且可以解密密码?在密码学和东西上并不是很强大,但这听起来像是要走的路吗?还有其他建议吗?人们如何处理这种自动部署?


更新:

好的,我已经完成并实施了它.我在C#中编写了一个使用Crypography库的控制台应用程序.该应用程序生成密钥:

RSACryptoServiceProvider rsa = GetRsa(containerName);
File.WriteAllText("keys.kez",rsa.ToXmlString(true));
Run Code Online (Sandbox Code Playgroud)

我也拿出了公钥:

File.WriteAllText("public.pke", rsa.ToXmlString(false));
Run Code Online (Sandbox Code Playgroud)

将公钥提供给必须加密密码并要求他们在配置中输入密码的任何人.将keys.kez文件放在必须运行部署的任何代理中.

c# deployment powershell configuration production-environment

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

在公共github存储库和其他敏感数据中隐藏OAuth使用者密钥

我想公开私有Github repo,但该项目包括OAuth数据(在Twitter身份验证中使用)和数据库MySQL登录详细信息.有没有一种常见的做法可以轻松隐藏价值观,还是我只是在承诺回购时更改它们?我猜这就是我要问的原因,因为我可能会忘记.

security github

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

使用Git进行Subversion:忽略对跟踪文件的修改

我目前正在使用Subversion存储库,但是我正在使用git在我的计算机上本地工作。它使工作变得容易得多,但同时也使Subversion存储库中发生的某些不良行为变得非常明显,这给我带来了问题。

下拉代码后,本地构建过程有些复杂,它会创建(不幸的是修改)许多文件。显然,这些更改并不意味着会被提交回存储库。不幸的是,构建过程实际上是在修改一些跟踪的文件(是的,很可能是因为有人在某个时候将这些构建工件错误地提交给了Subversion存储库)。由于这些都是修改,因此将它们添加到我的忽略文件中对我没有任何帮助。

我可以避免将这些更改退回去,我只是简单地不暂存或提交它们,但是拥有未暂存的本地更改意味着我必须先清理它们才能重新建立基础。

我想知道的是,是否有任何方法可以忽略将来对一组跟踪文件的更改?另外,还有其他方法可以解决我遇到的问题,还是只需要告诉谁签入这些文件来清理它们即可?

svn git git-svn gitignore

3
推荐指数
1
解决办法
518
查看次数

如何从git中删除文件?

我有一个文件config-dev.php,它将用作开发版本配置.

现在,另一位开发人员想要在此文件中进行自己的更改.

当他提交时,这个文件被提交,我的config-dev.php被同事的文件覆盖.

这个文件是在.gitignore但它仍然无法正常工作.

如何从git索引中删除此文件,以便每个人都可以拥有自己的config-dev.php?

我试过git rm --cached config-dev.php但它还没有用.这个命令应该由所有同事执行吗?或者我应该在git rm之后同步?

git github

3
推荐指数
1
解决办法
6600
查看次数

如何隐藏开源项目中的私人信息?

最近,我一直在开发一个具有客户端和服务器的开源代理.客户端和服务器都有脚本.

服务器端可以在云平台上运行,客户端连接服务器.

我在Heroku上注册了一个用于调试服务器的应用程序,该应用程序的地址暂时写在客户端脚本中.

这就是环境.但显然服务器的地址仅用于个人调试.我不想公之于众.

我当前的方法是,每次我提交到存储库之前,我都会删除该地址,并在提交后,我将其添加回来.这显然不是一个好方法.

这种现象应该很常见.人们通常如何处理这个问题?

git version-control open-source

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