Примером этого исключаемого исключения является: Когда вы пытаетесь проверить что-то, это null.
Например:
string testString = null; //Because it doesn't have a value (i.e. it's null; "Length" cannot do what it needs to do)
if (testString.Length == 0) // Throws a nullreferenceexception
{
//Do something
}
Время выполнения .NET исключение NullReferenceException при попытке выполнить действие над чем-то, что не было инстанцировано, т.е. код выше.
По сравнению с ArgumentNullException, которое обычно выбрано как защитная мера, если метод ожидает, что то, что происходит
Дополнительная информация находится в C # NullReferenceException и Null Parameter .
Я предполагаю, что вы хотите объединить только те два конкретных набора изменений в другую ветвь.
Вы не можете объединить несколько наборов изменений за один раз, если изменения не находятся в последовательности.
Используя инструмент командной строки tf
, вы указываете диапазон версий, разделив версию на тильде.
tf merge /recursive /version:C162489~C162990 "$/SourceBranch" "$/TargetBranch"
В этом случае также будут включены изменения 162987 и 162967.
Если вы используете пользовательский интерфейс в Visual Studio, диалоговое окно слияния не позволит вам выбрать несколько отдельных наборов изменений, если они не находятся в последовательности.
Чтобы слить два отдельных набора изменений в другую ветку, вам придется сделайте это в два этапа: слейте 162489, а затем 162990 (начните с слияния самого старого набора изменений, если оба набора изменений содержат изменения в одни и те же файлы).
Тогда ваше рабочее пространство для целевой ветви будет содержать изменения для обоих changeets, и теперь вы можете зарегистрировать слияния как один набор изменений в целевой ветке.
Слияние должно выполняться последовательно. В вашем случае объединение двух наборов изменений, которые не являются последовательными, небезопасно, потому что вы можете потерять изменения, которые могут быть сделаны для тех же файлов. Вот почему клиент TFS не позволяет вам это делать.
В справке TFS Merge - http://msdn.microsoft.com/en-us/library/bd6dxhfy (v = VS.100) .aspx - вы видите во втором примере как вы можете объединить один набор изменений:
tf merge / version: C137 ~ C137 branch1 branch2 / recursive
Это то, что вы после?
Попробуйте это
tf merge /recursive /version:C162489~C162489 "$/SourceBranch" "$/TargetBranch"
tf merge /recursive /version:C162990~C162990 "$/SourceBranch" "$/TargetBranch"
Если у вас нет изменения кода конфликта в этих наборах изменений, TFS 2010 объединит последовательные слияния.