目前,我保持本地和开发服务器环境同步的方法是使用一个way文件。
def upload():
""" upload project dir to the production server. """
extra_opts = '--omit-dir-times'
rsync_project(
remote_dir=env.remote_dir,
local_dir=env.local_dir,
exclude=RSYNC_EXCLUDE,
delete=True,
extra_opts=extra_opts,
)
reload_apache()当我想从repo中提取数据时,我会使用以下命令
def update_source():
""" Update the project source. """
with cd(env.directory):
run('hg fetchanddestroy')别名cmd在其中执行此操作
fetchanddestroy = !hg pull && hg update -C如何在bitbucket上将一系列变更集合并为一个变更集?我试过使用machg,但它只是拉回了所有我合并的。我正在尝试一种合适的方式来将我的项目部署到我的VPS上,并使它们与我的本地存储库保持同步。在设置环境的过程中,我不得不对存储库进行一些小的调整,这导致在服务器上创建和拉出了许多更改集。因此,我希望将所有这些小的变更集合并为一个,以保持我的repo历史记录的干净。
谢谢
发布于 2012-04-23 20:15:03
我不确定我完全理解您在问什么,但是使用类似于Git Flow的分支工作流是管理开发和发布之间的变更流的好方法。
在“短”中,
$ hg update master && hg branch relv1.0
$ hg merge default && hg commit -m "merge latest from default“
$ hg commit -m“最后一分钟的bug fix...etc"
$ hg标记“版本1.0”&& hg update master && hg merge“版本1.0”& hg提交-m“合并版本1.0”
$ hg update "release 1.0“&& hg -m --close-branch commit "all done”
$ hg update default && hg merge master #如果有多个人进行开发,这里可能会出现合并冲突
$ hg commit -m "merge release 1.0 from master“
获取最新版本即可
这里的总体效果是,进入master的diff应该始终表示自上次发布以来默认分支的组合更改,我认为这是您想要的,而不是导致该发布的所有单个变更集。
显然,可能有1000种方法可以做到这一点,但我认为可以肯定的是,像Git-Flow这样的分支策略是无处不在的,你的团队可以理解它,从而遵循它。
另一种选择是使用补丁队列,这样您就可以完全控制在任何给定点进入变更集的内容。
https://stackoverflow.com/questions/10274028
复制相似问题