Questions tagged «version-control»

使用它来管理对作为计算机文件存储的文档和其他信息的更改。

2
您如何为Drupal核心贡献补丁?
想要改善这篇文章吗?提供此问题的详细答案,包括引文和答案正确的解释。答案不够详细的答案可能会被编辑或删除。 向Drupal核心贡献补丁的正确过程是什么? 假设我在Drupal核心中发现了一个错误,对其进行了修复并创建了补丁。我该如何提交? 如果该错误位于Drupal 7中,是否还必须在Drupal 8中对其进行修复并提交两个补丁?这是否也适用于文档错误/改进? 所有补丁都还需要单元测试吗?



4
(dis)使用'drush rsync'与'git'进行dev->生产的优势?
我在git的控制下建立了一个Drupal网站进行开发工作。 它以一个原始的裸GIT仓库为主体,并且随着我在各种项目工作git克隆中所做的更改,然后又将其推送回主体,更新后的挂钩立即将所做的更改推送到单个实时Staging网站(http:/ /staging.loc。)。没什么特别的,按预期工作。 我还对站点“ @STAGING”进行了别名处理。偶尔,我想将我的更改从暂存站点升级到生产服务器。 我想到了两种相对简单的方法: (1)在登台站点稳定的某个时间点,将生产站点创建为从主存储库的git checkout, (2)从临时站点到生产站点使用drush rsync+ drush sql-sync。 两者都可以工作。除了(2)本质上似乎更以Drupal为中心/意识到这一事实之外-繁琐毕竟是一组Drupal特定的工具-两种方法的相对优点是什么? 我应该考虑(1)而不是(2)的任何特殊原因吗? 无论哪种情况,“一切”都至少在一个版本控制下。

4
如何使用带有本地模块代码的“ drush make”模块?
我一定喜欢“匆忙制作”给我们的工作流程。我确信还有其他人希望将其开发代码放入make文件中,而不准备将其用于drupal.org,例如,使用bash脚本或通过我的工具快速部署该站点的新开发测试实例在埃吉尔见过。 看起来当前适合的工作流程是利用开发代码的git存储库。但是,我的开发计算机是Windows 7,我想在带有Ubuntu服务器实例的虚拟框中使用“ drush make”。

9
如何通过Makefile使用Drush启用新模块
在工作中,我们正在努力在git中设置新站点并进行本地开发。到目前为止,我已经创建了一个drush make文件以及一个安装配置文件,并且已通过puppet编写了此脚本,以便当用户对存储库进行全新克隆时,它将下载所有软件包并运行基本的站点安装。这样就可以了。 现在,我的问题是我何时需要为网站使用新模块。例如,我们为该站点构建一个新模块。我希望其他开发人员从git中提取并自动安装新模块。将其添加到drush make文件中只会导致其被下载,而运行“ drush si”将导致该站点被重新安装,从而清除所有数据。 做到这一点的最佳方法是什么? 编辑 我觉得我没有正确解释。我正在寻找一种基于drush中makefile条目自动启用模块的方法。这个想法是用户签出一个项目,然后如果不存在settings.php文件,我将让木偶运行'drush make'和'drush si'。我需要弄清楚的是,当用户下次进行拉动并且我们添加了一个新模块时,如何通过一些脚本自动启用该模块。如果需要的话,我会写一些东西来解析makefile并手动运行“ drush en”,但是我想找到一些预先构建好的东西。

2
如何设置default.settings.php以将其用于开发,测试和生产站点?
我在Drupal 7网站设置中使用dev,tst和prd环境。我使用git进行版本控制。 我想消除将站点从dev移到tst以及从tst移到prd时需要做的一个手动步骤。 现在,我必须分别为dev,tst和prd网站更新settings.php。 我想设置default.settings.php文件,以便将dev,tst和prd的所有设置都存储在一个default.settings.php和中。复制到settings.php后,Drupal将根据环境选择正确的设置。 我正在寻找类似下面的伪代码的东西: common.settings if environment = dev then ... dev.settings ... else if environment = tst then ... tst.settings ... else if environment = prd then ... prd.settings ... end if 您知道如何为Drupal 7做到这一点吗?

2
在不中断SVN的情况下更新模块吗?
是的,这已经让我伤了两天了。我到处都找不到答案! 我在服务器上刷了4.4。我正在通过Unfuddle.com使用SVN。我有一个网站,我想更新很多模块。我只想更新代码,然后检查它是否正常工作(此时数据库更新不是问题),然后提交相关代码。 过去,drush dl会简单地将模块代码下载到旧模块的顶部,而无需删除它。这已不再是这种情况。现在,AFAICT drush删除了模块目录,并将其替换为更新的版本。很好,因为它解决了旧文件的问题,而旧文件不再包含在更新的模块中。 但是,使用drush dl或upc命令会使我感到困惑,因为运行这些命令确实会获得较新的版本,但是它会破坏进程中的SVN数据文件夹,使我到处都遇到“!module / file.php”问题。不再存在的文件。 我被告知,“ drush upc / dl modulename --version-control = svn”应该可以,但是不能。SVN数据仍然被破坏。 这让我不得不面对潜在的噩梦:svn del模块,svn commit -m“已删除的模块”,drush dl模块,(测试模块),svn add模块,svn commit -m“添加的模块”-每一个模块,这是一个完全的恐怖。 我不想设置drush来自动提交更改,我只想下载它们,并在对更改满意后最后全部手动提交。这可以这么难,但是我根本无法使它工作。 我还被告知,迁移到git(是的,我知道unfuddle支持git!)也是一种解决方案,但它不是立即的解决方案,并且在这一点上并不令人满意。 任何人都可以对此有所了解吗?
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.