在测试环境中,Git提交需要不同于用于测试和开发的PHP代码,在该环境中,有哪些方法可以处理项目?

在测试环境中,Git提交需要不同于用于测试和开发的PHP代码,在该环境中,有哪些方法可以处理项目?,php,git,netbeans,github,Php,Git,Netbeans,Github,在我的项目中,可部署版本需要有每个外部lib的副本、不同的配置文件以及安装和安装文件,出于安全考虑,如果存在主项目,则将其设置为拒绝运行。因此,其他项目的上游副本需要承诺回购。在本地主机上运行的代码中,文件布局以及来自开发和测试的文件内容有时与我需要提交的内容不同,我如何处理这些代码 背景 我正在github上托管的一个项目中工作,我的主要IDE是netbeans,它对git的支持不完善(足以满足我99%以上的需求)。该项目使用PHP,并使用其他几个项目作为库 由于Netbeans对次级回购没有

在我的项目中,可部署版本需要有每个外部lib的副本、不同的配置文件以及安装和安装文件,出于安全考虑,如果存在主项目,则将其设置为拒绝运行。因此,其他项目的上游副本需要承诺回购。在本地主机上运行的代码中,文件布局以及来自开发和测试的文件内容有时与我需要提交的内容不同,我如何处理这些代码

背景 我正在github上托管的一个项目中工作,我的主要IDE是netbeans,它对git的支持不完善(足以满足我99%以上的需求)。该项目使用PHP,并使用其他几个项目作为库

由于Netbeans对次级回购没有最好的支持,我选择将每个额外的项目保留在一个单独的项目中。这很好,因为中心项目会查看配置数据,以便在何处可以找到libs之外的配置数据

半个答案 我的直觉是,在提交github回购协议之前,需要有一些“构建阶段”,但我究竟该如何着手设置这些呢

我可以写一些自制的东西,但是当我得到其他人的贡献时,我需要逆转这个过程,除非我们有一个用于构建的分支和一个用于工作副本的分支,这似乎是不必要的复杂,并且可能会让开发人员配置数据公开显示(更不用说更新是一团糟)

我看到其他人也在努力解决一些类似的问题,但没有任何结论(在提问时),因此我正在寻找任何可能帮助我找到解决方案的方法

我的主要IDE是netbeans,它对git的支持不完善

大多数开发人员只使用命令行。我偶尔会切换到NetBeans冲突解决程序,这非常好,但对于普通的东西,控制台通常更快

我的直觉是,在提交github回购协议之前,需要有一些“构建阶段”

。。。除非我们有一个构建分支和一个工作副本分支

不,只有一个存储库。最好将repo视为代码历史记录,而不是部署状态。分支应该只用于合并到主线/主线的功能或大型更改

在部署时,有很多选项可供选择。第一个是Composer,Mark指出:在部署时,发出
install
update
命令,递归获取满足库要求的依赖项。您可以使用对JavaScript依赖项执行相同的操作

一些部署策略更喜欢在本地构建,然后将
scp
/
rsync
构建到远程服务器。Composer和Bower可能仍然是一个好主意,但是您可以编写一个构建脚本(例如,使用或)在本地临时文件夹中创建一个构建副本,然后将其发送到服务器。在这里,将其推送到服务器上的新发布文件夹,然后在准备上线时交换符号链接或Apache配置文件也是很常见的

出于安全考虑,可部署版本需要有每个外部lib的副本、不同的配置文件以及安装和安装文件

假设这是一个web项目,您是否尝试过将敏感环境数据添加到Apache配置文件中?这可以在PHP中轻松阅读,当然,PHP并不关心这些信息是否因您是在开发、测试、演示分支还是在现场操作而有所不同


进一步阅读:,免费,建议Phing和Capistrano

我的主要IDE是netbeans,它对git的支持不完善

大多数开发人员只使用命令行。我偶尔会切换到NetBeans冲突解决程序,这非常好,但对于普通的东西,控制台通常更快

我的直觉是,在提交github回购协议之前,需要有一些“构建阶段”

。。。除非我们有一个构建分支和一个工作副本分支

不,只有一个存储库。最好将repo视为代码历史记录,而不是部署状态。分支应该只用于合并到主线/主线的功能或大型更改

在部署时,有很多选项可供选择。第一个是Composer,Mark指出:在部署时,发出
install
update
命令,递归获取满足库要求的依赖项。您可以使用对JavaScript依赖项执行相同的操作

一些部署策略更喜欢在本地构建,然后将
scp
/
rsync
构建到远程服务器。Composer和Bower可能仍然是一个好主意,但是您可以编写一个构建脚本(例如,使用或)在本地临时文件夹中创建一个构建副本,然后将其发送到服务器。在这里,将其推送到服务器上的新发布文件夹,然后在准备上线时交换符号链接或Apache配置文件也是很常见的

出于安全考虑,可部署版本需要有每个外部lib的副本、不同的配置文件以及安装和安装文件

假设这是一个web项目,您是否尝试过将敏感环境数据添加到Apache配置文件中?这可以在PHP中轻松阅读,当然,PHP并不关心这些信息是否因您是在开发、测试、演示分支还是在现场操作而有所不同


进一步阅读:,免费,建议Phing和Capistrano

我的主要IDE是netbeans,它对git的支持不完善

大多数开发人员只使用命令行。我切换到NetBeans冲突解决方案