这是我的脚本,试图将我的bugfix分支合并到我的主分支上,准备将其推向上游.自bugfix分支创建以来,已经有一些上游更改被拉入master,现在它拒绝rebase.
它抛出错误的文件在打开时不会被分散.没有添加,删除或重命名的文件.没有任何东西被忽略,没有任何东西没有被追踪或上演或未分期.我完全不知道为什么rebase失败了.
我在OS X 10.6.6和git 1.7.4上
.-(/Volumes/joshua/www/txfunds)-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------(joshua@Kusanagi)-
`--> git rebase bug586-test master-test
First, rewinding head to replay your work on top of it...
Applying: - comiitting code related to api permissions
Using index info to reconstruct a base tree...
Falling back to patching base and 3-way merge...
error: Your local changes to the following files would be overwritten by merge:
inc/data.inc
templates/apipermissions_tpl.inc
templates/currencies_tpl.inc
Please, commit your changes or stash them before you can merge.
Aborting
Failed to merge in the …
Run Code Online (Sandbox Code Playgroud) 我有一个项目是现有FOSS产品的定制.它达到了我们维持长期分叉而不是应用新插件等的程度.我想对维护这个项目的最佳工作流程提出一些建议.
只需在github上分叉项目.超级凌乱维持并让人们加快速度.失败3,4.
创建一个新的存储库,让项目维护者根据需要提取上游代码库的标记版本.例如,git fetch upstream; git merge upstream/sometag tagintegrationbranch
不确定如何在此模型中轻松推送上游修复程序.有点失败1.
分叉上游项目,将其用作选项2中的上游项目.用作PR系统的助手.可能需要做一些樱桃选择或一些类似的微观管理来推动代码备份这个工作流程,具体取决于功能/错误分支的管理程度,但应该相当干净.似乎满足大多数标准.
我没考虑过的东西?
我们有一个PHP应用程序,并且认为让应用程序知道自上次执行以来它的构成是否有变化可能是有利的.主要是由于管理缓存等,并且知道我们的应用程序有时会被不记得清除缓存更改的人访问.(改变人民是明显的答案,但唉,不是真的可以实现)
我们已经提出了这个问题,这是我们成功实现的最快速度,在一台典型项目的开发者机器上平均运行0.08.我们用shasum,md5和crc32进行了实验,这是最快的.我们基本上md5ing每个文件的内容,并md5'输出.安全性不是问题,我们只对通过不同的校验和检测文件系统更改感兴趣.
time (find application/ -path '*/.svn' -prune -o -type f -print0 | xargs -0 md5 | md5)
Run Code Online (Sandbox Code Playgroud)
我想问题是,这可以进一步优化吗?
(我意识到修剪svn会有成本,但是发现组件花费的时间最少,所以它将是非常小的.我们在工作副本atm上测试它)
我想建立一个"理想的"灯具开发堆栈.
这个想法是,它是一个管理金融-能服务器,我可以控制,并通过移动到子集为每个项目提供全局配置的东西像APC,Memcached的,XDebug的等.然后,我可以让我的用户迅速控制他们对各种环境项目.
基本上我建议开发人员在他们自己的机器上运行自己的堆栈的典型系统,但是集中.通过这种方式,我希望避免像跨操作系统代码问题,数据库不一致,产生错误的安装略有不同等问题.
我很乐意在源代码的自定义构建中管理它,但是如果可能的话,通过某种包管理来管理它的很大一部分会很棒.我们通常使用CentOS,所以yum?
有没有人曾经这样建过这样的东西?是否有类似于我所描述的交钥匙?是否有任何有用的指南我应该阅读,以便建立这样的东西?
束缚自己,这是一个棘手的问题.
我们有一个处理大数据集的系统.(每张桌子有数百万到十亿的记录).所有数据都在节点的树结构中处理.
我们正在使用Symfony2和Symfony2安全系统(Domain Objects,Acls,Aces等).我们的Acl树镜像我们的节点树.
硬币一些语言:
DP
定义的权限,即此acl节点上的ace记录EP
有效权限,没有ace记录,从父级继承的权限 DP
业务逻辑上,我们为每个用户的对象分配0或1个ace,并且在没有的情况下依赖继承. Root > lvl1 (DP: VIEW) > lvl2 > lvl3 (EP: VIEW)
到现在为止还挺好.这一切都有效.
一些节点不仅具有父节点,而且与其他节点(多对多节点)相关联.当一个节点与另一个节点相关联时,这表示树上的一个单独路径,供acls遵循.IE我们将有一条或多条路径从树到根以收集ace.
Leaf < Parent < GrandParent < Root
Leaf < AssociatedNode < AssociatedNodeParent < AssociatedNodeGrandParent < Root
...
Run Code Online (Sandbox Code Playgroud)
或者用于管理aces投票的逻辑很好,我们不确定的是如何表示树上的多个路径.我们当前(读:坏)的想法是:
如果我对我的实体有很多验证器,我可以以某种方式指定一个如果失败则停止其余的吗?IE:如果NotBlank失败,那么检查权限是没有意义的.
或者,如果它没有内置,也许有一种方法可以指示图形走动器停止,我可以放入一个验证器来检查先前的故障并停止通过图形传播.
我有一个代码库,由于尾随空格而使我发生冲突.我想清理一下.
我想:
将所有前导空格转换为制表符,即4个空格到制表符.
而忽略.git目录.
我在OSX Snow Leopard上,在zsh中.
到目前为止,我有:
sed -i "" 's/[ \t]*$//' **/*(.)
Run Code Online (Sandbox Code Playgroud)
这很好用,但是sed在它接触到的每个文件的末尾添加了一个新行,这是不好的.我不认为sed可以停止这样做,所以我怎么能删除这些新行?可能有一些awk魔法在这里应用.
(完整答案也欢迎)
我正在玩javascript中实现事件池模式,类似于此处描述的内容:http://www.michaelhamrah.com/blog/2008/12/event-pooling-with-jquery-using-bind-和触发管理复杂的JavaScript /
我需要能够在触发事件时设置事件闭包的上下文,而不是在绑定时设置它们的上下文.是否有一些组合$ .trigger和$ .proxy的方法来做到这一点?
我已经设法让gvim非常接近控制台vim的感觉,没有滚动条,没有工具栏等.但是,每当它需要提示我,而不是在状态行下面它喜欢打开一个gui对话框.这个对话框很烦人,它经常出现在错误的显示器上,有时候我会想念它,还有额外的按键/点击来消除它.
显然我可以使用'c'标志禁用简单的选择对话框,但它似乎对我不起作用.也许我的测试对话框不被认为是"简单".
set guioptions+=lrbmTLce
set guioptions-=lrbmTLce
Run Code Online (Sandbox Code Playgroud)
我正在测试关于交换文件的对话框(无论是只读,恢复,编辑等)以及有关在vim实例外部更改文件的对话框.
我有一个git svn存储库.
git svn clone http://myrepo/ myrepo
Run Code Online (Sandbox Code Playgroud)
我不想在大师工作:
git checkout -b development
Run Code Online (Sandbox Code Playgroud)
破解了一会儿.
git checkout master
git svn rebase
git rebase development
git svn dcommit
Run Code Online (Sandbox Code Playgroud)
到目前为止一切都很好,似乎没有人承诺,因为我做了最后一次,svn rebase没有做任何改变,我的开发工作也没有.
Merge conflict during commit: File or directory 'inc/data.inc' is out of date; try updating: resource out of date; try updating at /usr/local/git/libexec/git-core/git-svn line 576
Run Code Online (Sandbox Code Playgroud)
好吧,没有SVN先生,不是.我问你最新的那个,你说我已经有了.它的不同之处在于我改变了它.
这里发生了什么,为什么我不能承诺呢?