2016-02-29 28 views
0

我在GitHub上有一个私人回购,并在我的服务器上配置了Satis。Satis与私人回购更新工作流程

赛帝只有一个标签我speficied称为0.9.1

Everithing做工精细,我用的是作曲家创建项目命令创建我的电脑与回购内容上一个新的项目,安装作曲家的依赖等。

现在的问题

假设回购继续发展,现在我有一个标签叫0.9.2。

如何使用新的回购标签更新我的机器上的项目。

我需要在satis服务器上执行其他任务吗? 我需要在我的机器上运行一些命令? 什么是此场景的最佳工作流程?

Tranks

UPDATE

我的私人GitHub上 https://github.com/pablonunez-dev/myproject

文件在我的回购回购。

file1.txt 
file2.txt 
composer.json 

这是composer.json文件

{ 
"name": "myproject", 
"description": "myproject", 
"keywords": ["myproject", "application template"], 
"homepage": "http://www.myserver.net/", 
"type": "project", 
"license": "BSD-3-Clause", 
"support": { 
    "issues": "https://github.com/yiisoft/yii2/issues?state=open", 
    "forum": "http://www.yiiframework.com/forum/", 
    "wiki": "http://www.yiiframework.com/wiki/", 
    "irc": "irc://irc.freenode.net/yii", 
    "source": "https://github.com/yiisoft/yii2" 
}, 
"minimum-stability": "dev", 
"require": { 
    "php": ">=5.4.0", 
    "yiisoft/yii2": "2.0.7" 
}, 
"extra": { 
    "asset-installer-paths": { 
     "npm-asset-library": "vendor/npm", 
     "bower-asset-library": "vendor/bower" 
    } 
} 

}

这是对我的SATIS项目配置文件的内容

{ 
    "name": "My Satis Packages Server", 
    "homepage": "http://satis.myserver.net", 
    "repositories": [ 
     { "type": "vcs", "url": "https://github.com/pablonunez-dev/myproject 
      ], 
    "require": 
    { 
     "myproject/core":"0.9.*" 
    } 
} 

现在,当我去我的电脑并运行。

C:\composer create-project myproject/core test1 --repository-url=http://satis.myserver.net 

它运作良好,创建文件夹,并与结构安装从composer.json依赖现在

file1.txt 
file2.txt 
vendor 
composer.json 
composer.lock 

,问题是,当我去我的仓库和删除文件德FILE1.TXT并创建另一个名为file3.txt,提交,推送,重新创建满足

如何更新我的机器上的文件夹与回购更改?

感谢,再次

回答

2

最好是有一个脚本或做所有赛帝更新要求你需要一键式作业。

一般情况下,您的工作流程是这样的:

  1. 更新软件,提交和推,并用新的版本号标记它。推动标签。
  2. 更新Satis回购数据。
  3. composer update更新您的主包 - 这应该获取包的新标签。

更新Satis可能只是一个简单的命令行调用,但它具有带文件的参数,并且您不想记住它们。只需添加一个简单的shell脚本satis-update即可使用正确的参数调用Satis。如果可能,请在Jenkins或Bamboo上创建工作,或者在允许您单击启动更新的按钮的位置创建工作。

最好的解决方案是将标记后触发器添加到所有开始更新后的标记已被推入,但这是先进的。我自己的Satis实例拥有120个内部软件包,而Satis每晚只运行一次,或者如果开发人员需要更快速地按需手动运行。大约需要5分钟才能完成。

请注意,您可以通过添加您正在开发的存储库作为附加vcs回购来省略Satis更新周期。这样你的主包可以直接查询仓库,并立即知道新标签。但是,这只是在开发期间才真正推荐的。

+0

谢谢@Sven,这是我需要知道的信息,如果我正在进行最佳方向,现在我正在测试您描述的工作流程的第3点。 –

+0

好吧,我测试点#3,并没有工作。满意我只有一个回购,这个回购是一个完整的网站开发下yii,有很多文件夹和他们自己的composer.json文件。 当我运行作曲家创建项目.... --repository-url = mysatisserver它工作得很好,创建与整个回购内容的项目,并安装从composer.json文件的所有依赖项,但我失去了连接与满意因为没有地方指出,所以我不知道如何更新项目(不依赖),谢谢 –