假设我们有一个稳定的应用程序.
明天,有人会报告我们决定立即修补的大错误.因此,我们为"master"创建了一个针对该修补程序的分支,我们将其命名为"2011_Hotfix",然后我们将其推送到所有开发人员可以协作修复它.
我们修复了这个bug,并将"2011_Hotfix"合并到"master"以及当前的开发分支中.推"主人".
我们现在用"2011_Hotfix"做什么?它应该只是作为一个分支永远坐在那里直到时间结束,还是我们现在应该删除它,因为它已经达到了它的目的?将分支放在各处都是不洁净似乎是不洁净的,因为分支列表可能会变得很长,其中大部分都不再需要了.
如果它应该被删除,它的历史会发生什么?即使实际的分支不再可用,这是否会得到维护?另外,我如何删除远程分支?
我的老板最近决定尝试一个"增加容量"的外包小组,因为我们修改现有的应用程序以添加新功能.尽管我担心他所选择的小组似乎并没有很好地沟通,也没有提出足够的问题来真正理解和有效,但我们还是和他们一起去了.
我们将它们设置为在我们的Git存储库(托管在GitHub上)上进行协作.我们为他们创建了一个分支(TheOutsourcedBranch,我们称之为),并要求他们在这个分支中完成所有工作.
此外,我们要求他们在每天结束时推送他们的提交,以便我们可以很好地了解他们的工作速度,以及(更重要的是)他们的代码有多好.
今天他们第一次推了推.五个提交,所有这些都是主人.我正在试图弄清楚如何将他们的提交从master转移到TheOutsourcedBranch,而不会丢失他们已经完成的工作(尽管从它的外观来看,无论如何我们都不得不扔掉它).

橙点是他们的承诺,灰点是我的.
我知道有很多关于变基的问题(这可能是我在这里需要做的)但我很难弄清楚哪些适用于我的具体情况.如果重要的话,外包集团和我自己是现在唯一真正使用回购的人.
提前致谢!
编辑: 我可能已找到我正在寻找的内容:使用Git将最近的提交移动到新的分支
不过,我想检查一下我的理解.在本地,我创建了一个主要的分支(TheOutsourcedBranch),它将包含所有AH.然后我将主人重置为C.主人现在包含AC.
假设这是正确的,那对我(本地)来说没问题.但是,我需要做些什么才能"强制"远程存储库(GitHub)接受我对本地事件如何发挥作用的本地视图并丢弃其历史版本?
一旦这个问题发生了,我想我可以重新解决这个问题,使其更具通用性/信息性,并减少一些毛病 - 否则它可能是一个很好的删除候选人,我猜.
我正在处理的应用程序是各种各样的"配置器".它是用C#编写的,我甚至编写了一个规则引擎来配合它.这个想法是有一堆命题逻辑语句,用户可以进行选择.根据他们选择的内容,其他一些项目变得必需或完全不可用.
命题逻辑语句通常采用以下形式:
A => ~X
ABC => ~(X+Y)
A+B => Q
A(~(B+C)) => ~Q A <=> B
Run Code Online (Sandbox Code Playgroud)
符号:
=> -- Implication
<=> -- Material Equivalence
~ -- Not
+ -- Or
Two letters side-by-side -- And
Run Code Online (Sandbox Code Playgroud)
我对Prolog很新,但似乎它可以为我处理所有"规则处理",允许我摆脱目前的规则引擎(它可以工作,但它不是那么快或容易按照我的意愿保持).
此外,所有可用选项都属于层次结构.例如:
Outside
Color
Red
Blue
Green
Material
Wood
Metal
Run Code Online (Sandbox Code Playgroud)
如果暗示了第二级(特征,如颜色)的项目,则必须选择第三级的项目(选项,例如红色).同样,如果我们知道某个功能是假的,那么它下面的所有选项也都是假的.
问题在于每个产品都有自己的一套规则.设置包含这些运算符作为谓词的知识库是一种合理的方法,然后在运行时开始构建产品的所有规则吗?
我想象它可能会起作用的方式是建立组件,功能和选项的想法.然后设置then之间的关系(例如,如果该功能为false,则其所有选项均为false).在运行时,添加产品的特定规则.然后将所有用户的选择传递给一个函数,检索哪些项为真,哪些项为假.
我不知道我所要求的所有含义,因为我刚刚进入Prolog,但我正试图避免走上一条糟糕的道路,并在此过程中浪费大量时间.
一些问题可能有助于针对我想要找到的内容:
提前感谢您的建议!
我希望创建一个自定义面板或控件来创建一个非常特殊类型的项目.
基本上,目的是有一个控件,你可以给出一个对象列表,它会将每个对象放入一个按钮.问题是按钮应该像圆环一样布置成圆形.与下图相似.

但是现在想象一下,如果可以的话,每个彩色部分都是一个按钮.它们也具有按钮的所有功能,如鼠标悬停和事件.
所以,问题首当其冲的是:我应该采用什么样的技术来创造这种控制?有没有办法在按钮上进行某种"曲率"变换?
看起来我真的想在这里找两件事,对吧?
我的意思是,我可以将列表中的每个项目放入一个ItemsControl,它有一个按钮作为其ItemTemplate.所以我需要的是两件事:
第一个是径向布局面板(我见过其中的一些).
第二种方法是让每个按钮都有某种旋转和曲率变换.
有任何想法吗?
我需要保护整个静态HTML文件的文件夹.目的是用户无法访问这些文件,除非他们经过身份验证并具有必要的角色.
我们已经使用OWIN设置了基于cookie的身份验证,但无论我尝试什么,我似乎都无法找出要对文件夹进行身份验证的更改的正确组合.
第一个问题是IIS完全跳过ASP.NET而只是提供文件.我认为通过将runAllManagedModulesForAllRequests设置为true可能有办法解决这个问题.但是我从哪里去?
我已经尝试在Web.config中填充元素以要求适当的角色,但它只会导致每个请求被拒绝(可能是因为它没有检查正确的cookie或其他东西).
我花了一整天的时间在这上面,我即将失去理智.
有人解决了这个问题吗?
我已经阅读了关于这个主题的大量问答,并遵循了该信的所有指示.但是我仍然头疼,试图将Git设置为使用WinMerge进行差异和合并.
我使用Git终端采取了以下步骤:
git config --global diff.tool winmerge
git config --global difftool.winmerge.cmd "winmerge.sh \"$LOCAL\" \"$REMOTE\""
git config --global difftool.prompt false
Run Code Online (Sandbox Code Playgroud)
我还在我的PATH变量中包含的目录中设置了一个脚本:
#!/bin/sh
echo Launching WinMergeU.exe: $1 $2
"C:/Program Files/WinMerge/WinMergeU.exe" git /e /u /dl "Base" /dr "Mine" "$1" "$2""
Run Code Online (Sandbox Code Playgroud)
当我执行
git mergetool
Run Code Online (Sandbox Code Playgroud)
在Git终端中,我看到:
Merging:
first.txt
Normal merge conflict for 'first.txt':
{local}: modified
{remote}: modified
Launching WinMergeU.exe:
Run Code Online (Sandbox Code Playgroud)
因此在我看来,$LOCAL和$REMOTE变量并没有将任何内容传递给winmerge.sh脚本.我在这做错了什么?我必须在配置部分中假设它.
我有AppDomainA,它会旋转AppDomainB.AppDomainB然后旋转AppDomainC.
如果,内AppDomainA我卸载AppDomainB,并AppDomainC也得到卸载或我必须确保来处理我自己?
我确信这个问题或它的衍生物已被问过无数次,但我找不到任何帮助我解决问题的东西,所以我问.请随时告诉我我确定存在但我找不到的副本.显然我对关键词的关注度不高.
我有一个自定义控件,它有自己的资源字典,仅用于定义控件模板.然后将该字典合并到Generic.xaml中.
问题是当这个控件出现在UI中时,它内部没有任何内容.我用Snoop找到了这个.控件位于UI中,但它完全为空.
您将在下面找到我认为对此问题负责的项目.我们非常感谢您提供的任何帮助或建议.
我的文件夹结构的相关部分是这样的:

BasicTemplate.xaml:
<ResourceDictionary
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:WPFSpecBuilder.Layouts.Templates">
<Style TargetType="{x:Type local:BasicTemplate}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type local:BasicTemplate}">
<Border Background="{TemplateBinding Background}"
BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="{TemplateBinding BorderThickness}">
<Grid>
<TextBlock Text="This is a basic template." />
</Grid>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</ResourceDictionary>
Run Code Online (Sandbox Code Playgroud)
Generic.xaml
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Layouts/Templates/XAML/BasicTemplate.xaml" />
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
Run Code Online (Sandbox Code Playgroud) 我正在使用MVVM和实体框架.我有一个名为"Quote"的实体,其导航属性名为"QuoteProducts",其中包含报价中的所有产品.
我的ViewModel有一个名为"CurrentQuote"的属性,其类型为"Quote",我的视图具有以下ListBox:
<ListBox ItemsSource="{Binding CurrentQuote.QuoteProducts}">
Run Code Online (Sandbox Code Playgroud)
在大多数情况下,效果很好.我加载一个引号,ListBox填满,一切都超级.但是,当我使用添加新产品时
QuoteProduct product = new QuoteProduct();
product.Product = SelectedProduct;
CurrentQuote.QuoteProducts.Add(product);
Run Code Online (Sandbox Code Playgroud)
新产品不会出现在ListBox中.我一直在做一些阅读,看起来原因是因为导航属性背后的集合没有通知UI它已经改变了.但我没有找到的是干净利落的方式.
我看到一个解决方案需要保留一个单独的QuoteProducts列表,绑定到它,并在添加产品时添加到它们中,但这似乎不是正确的方法.
有什么方法可以解决我的数据模型的功能,以便在集合发生变化时通知它?
我有两个python文件:mainfile.py和subfile.py
mainfile.py依赖于subfile.py中的某些类型.
mainfile.py看起来像这样.
from subfile import *
my_variable = [1,2,3,4,5]
def do_something_with_subfile
#Do something with things in the subfile.
#Return something.
Run Code Online (Sandbox Code Playgroud)
我正在尝试在C#中加载mainfile.py并获取my_varaible的值,但是我在查找充分描述我正在调用的方法之间关系的资源时遇到了一些困难,我承认,我不知道关于Python.
这是我写的:
var engine = Python.CreateEngine();
//Set up the folder with my code and the folder with struct.py.
var searchPaths = engine.GetSearchPaths();
searchPaths.Add(@"C:\ACodeFolder");
searchPaths.Add(@"C:\tools\python\lib");
engine.SetSearchPaths(searchPaths);
//A couple of files.
var mainfile = @"C:\ACodeFolder\mainfile.py";
var subfile = @"C:\ACodeFolder\subfile.py";
var scope = engine.CreateScope();
var scriptSource = engine.CreateScriptSourceFromFile(subfile);
var compiledScript = scriptSource.Compile();
compiledScript.Execute(scope);
scriptSource = engine.CreateScriptSourceFromFile(mainfile);
compiledScript = scriptSource.Compile();
compiledScript.Execute(scope);
scriptSource = …Run Code Online (Sandbox Code Playgroud) 我正在使用MVVM,以防它有所作为.
我的MainWindowViewModel有两个DependencyProperties,TheList和TheSelectedItem.List是List <Type>,TheSelectedItem是Type.
MainWindow有一个ComboBox.当MainWindowViewModel加载它抓住所有的组件实现类的列表IMyInterface的和设置的thelist了这一点.
这些类中的每一个都有一个名为DisplayName的自定义属性,它有一个参数,用于显示类的用户友好名称,而不是应用程序知道的类名.
我还有一个ValueConverter,其目的是将这些类型转换为显示名称.
public class TypeToDisplayName : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
if (targetType.Name == "IEnumerable")
{
List<string> returnList = new List<string>();
if (value is List<Type>)
{
foreach (Type t in value as List<Type>)
{
returnList.Add(ReflectionHelper.GetDisplayName(t));
}
}
return returnList;
}
else
{ …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用MVVM在我的UI中的按钮上设置命令.但是,当我单击按钮时,该命令不会执行.该代码基于Jason Dolinger的示例(第3段中的链接).
看起来它应该很简单,所以我确信一旦发现错误,我会觉得很傻.
相关代码位如下.命令如下(非常简单):
public class NavigateCommand : ICommand
{
public bool CanExecute(object parameter)
{
return true;
}
public event EventHandler CanExecuteChanged
{
add { CommandManager.RequerySuggested += value; }
remove { CommandManager.RequerySuggested -= value; }
}
public void Execute(object parameter)
{
MessageBox.Show("Executed.");
}
}
Run Code Online (Sandbox Code Playgroud)
XAML看起来像:
<Button x:Name="btn_ProjectManager" Command="{Binding Navigate}" Content="Test Button">
Run Code Online (Sandbox Code Playgroud)
ViewModel看起来像:
public class HomeScreenViewModel : DependencyObject
{
public ICommand Navigate;
public HomeScreenViewModel()
{
this.Navigate = new NavigateCommand();
}
}
Run Code Online (Sandbox Code Playgroud) 我正在上数据库课程,讲师希望我们开发电子商务应用程序。她说我们可以使用我们喜欢的任何框架,现在我们已经过了学期的一半,她认为 Rails 做的太多,并希望我明确地编写我的 SQL 查询。
所以,我想做的是编写自己的函数并将它们添加到模型中,以基本上复制现有的功能(但使用我自己编写的 SQL)。
那么问题就变成了:
另外,我知道这是多么糟糕的做法,我只是不想在这一点上从头开始使用 PHP。
wpf ×5
git ×3
binding ×2
github ×2
mvvm ×2
.net ×1
appdomain ×1
asp.net ×1
asp.net-mvc ×1
c# ×1
command ×1
git-branch ×1
git-gui ×1
git-rebase ×1
icommand ×1
inference ×1
ironpython ×1
itemscontrol ×1
logic ×1
mergetool ×1
model ×1
msysgit ×1
owin ×1
panel ×1
prolog ×1
radial ×1
rebase ×1
ruby ×1
rule-engine ×1
sql ×1
static-files ×1
types ×1
winmerge ×1