今天我遇到了一个问题.我的队友从大师那里创建了分支.他在这个分支中开发了一个特征,然后在子特征的分支中开发了两个子特征.最后他对整个事情做了两次重构.所以...
C--D E--F | subfeatures
/ \ / \
B------M1------M2--G--H | feature
/
A-------------------K | master
Run Code Online (Sandbox Code Playgroud)
通常我们在将no-fast-forward合并到master之前对功能分支进行rebase.但当然这个rebase失败了.重新定义的功能分支看起来像:
B'--C'--D'--E'--F'--G'--H'
/
A--K
Run Code Online (Sandbox Code Playgroud)
当然,C&D的指针也出错了,所以我还得到了两个从空中成长的子功能分支.如果子特征分支没有合并到特征中,我理解如何修复它,但此时我很困惑.我在精心挑选的恢复分支中挑选了所有内容并再次合并.这是一个更简单的方法吗?
我有这样的代码
reg = /(.+)_path/
if reg.match('home_path')
puts reg.match('home_path')[0]
end
Run Code Online (Sandbox Code Playgroud)
这将eval正则表达式两次:(所以...
reg = /(.+)_path/
result = reg.match('home_path')
if result
puts result[0]
end
Run Code Online (Sandbox Code Playgroud)
但它会将变量结果存储在内存中直到.我有一个功能编程的想法
/(.+)_path/.match('home_path').compact.each do |match|
puts match[0]
end
Run Code Online (Sandbox Code Playgroud)
但似乎应该有更好的解决方案,不是吗?