我正在尝试找出在项目中在Atmosphere上分叉现有包的最佳/最干净的方法.我遇到过一些现有软件包需要进行一些修改的情况,我被迫分叉了.
据我所知,存在以下选项.不幸的是,所有这些都有自己的问题,我还没有找到完美的解决方案.我将以meteor-router一个例子为例:
脚步:
packages/router/.git/packages/.gitignore并删除"路由器"行smart.jsonpackages/router到项目存储库并提交好处:
缺点:
除了最简单的包装之外,甚至不要考虑这个!
要在github上分叉包,您可以检查您的smart.lock文件以查看正在使用的存储库.转到该存储库的github页面并进行分叉.
接下来,您有三个选择:
有关git子模块的更多信息:http://git-scm.com/book/en/Git-Tools-Submodules
脚步:
smart.json好处:
缺点:
git submodule init第一次运行并update进行更新smart.json以使用您的版本脚步:
smart.json,找到"router": {}并添加"git": "https://github.com/USER/meteor-router.git"内部空{}."branch"或"tag".好处:
缺点:
(建议的陨石改进:允许以可编辑的形式安装包,比如Python的pip允许使用'-e'参数)
Github允许您在自己的域名上托管静态页面.此过程描述如下:https://help.github.com/articles/setting-up-a-custom-domain-with-pages
它提到您必须在存储库中创建一个名为CNAME的文件,以确保您的域映射到此存储库.
如果其他人在其CNAME文件中使用您的域名创建页面存储库,会发生什么?他们是否能够以这种方式劫持您的域名,或者Github会永久地将此域名与您的存储库相关联?
我正在使用Django 1.2 trunk和South 0.7以及从django-annoying复制的AutoOneToOneField.South抱怨该字段没有定义规则,新版本的South不再具有自动字段类型解析器.所以我阅读了South文档并编写了以下定义(基本上是OneToOneField规则的精确副本):
rules = [
(
(AutoOneToOneField),
[],
{
"to": ["rel.to", {}],
"to_field": ["rel.field_name", {"default_attr": "rel.to._meta.pk.name"}],
"related_name": ["rel.related_name", {"default": None}],
"db_index": ["db_index", {"default": True}],
},
)
]
from south.modelsinspector import add_introspection_rules
add_introspection_rules(rules, ["^myapp"])
Run Code Online (Sandbox Code Playgroud)
现在,当我进行模式移植时,South会引发以下错误.
Traceback (most recent call last):
File "manage.py", line 11, in <module>
execute_manager(settings)
File "django/core/management/__init__.py", line 438, in execute_manager
utility.execute()
File "django/core/management/__init__.py", line 379, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "django/core/management/base.py", line 196, in run_from_argv
self.execute(*args, **options.__dict__)
File "django/core/management/base.py", line 223, in execute
output = self.handle(*args, **options) …Run Code Online (Sandbox Code Playgroud) 我有一个带有 jsdoc 注释的函数,它在我的代码中类似于以下内容:
/**
* Foo function
* @param {Object} [options]
* @param {String} [options.foo]
*/
var foo = function (options) {
if (!options) options = {};
var foo = options.foo || 'foo';
// ...
};
Run Code Online (Sandbox Code Playgroud)
我的 IDE WebStorm 标记options.foo为“未解析的变量”。如果我删除 jsdoc 注释,警告就会消失。如何以 WebStorm 获取提示且不再显示此警告的方式记录此函数?

我尝试过的事情:
@param {String} [options.foo]@param {?String} [options.foo]@param {String} options.fooif (!options) options = {foo: 'bar'};这是一个错误还是我错过了什么?WebStorm 似乎确实理解options.fooparam 定义,因为if (!options) options = {foo: 42};会发出警告,指出分配的类型不是字符串。
我正在使用 WebStorm 7.0。
cname ×1
django ×1
django-south ×1
github ×1
github-pages ×1
javascript ×1
jsdoc ×1
meteor ×1
meteorite ×1
python ×1
security ×1
webstorm ×1