Связать наборы изменений с рабочим элементом git-tfs

Я пытался понять это, но пока безуспешно. Я использую git-tfs, чтобы проверить мои изменения в TFS (локально, используя GIT-репозиторий)

Я прочитал этот вопрос, который кратко описывает, что вы можете связать рабочие элементы в сообщении фиксации, используя метаданные ( ошибка TF26198 при выполнении git tfs rcheckin). Команды, которые я пытался использовать:

1)

git tfs checkin -m "Changes to workitem #12345" => doesn't associate changeset to TFS workitem

2)

git tfs rcheckin -w12345 -m "Changes to workitem 12345" => triggers error "error: This syntax with one parameter is only allowed in bare repository." 

3)

git tfs checkin -w12345 -m "Changes to workitem 12345" => triggers error No TFS parents found

4)

git tfs checkin -m "Changes to workitem #12345" => doesn't associate work item

Есть идеи, что я делаю не так?

Спасибо юлия

2 ответа

Решение

Попробуйте добавить :a за -w12345 вот так:

git tfs rcheckin -w12345:a -m "Changes to workitem 12345"

или же

git tfs checkin -w12345:a -m "Changes to workitem 12345"

Вы также можете использовать :r вместо :a "разрешить" вместо "связать"

Я думаю, что по умолчанию :a если вы не указали значение, но это никогда не работало для меня.

Сначала вы должны знать о разнице между checkin а также rcheckin (Смотрите команды git-tfs для команд для этого... Это действительно поможет!)

Затем сообщение коммита анализируется, чтобы найти связь рабочих элементов только с rcheckin (и не checkin) так 1) и 4) не сработает.

2) сообщение странное но это потому что rcheckin не должен работать таким образом.

3) Только что обнаружил сегодня (какое совпадение!), Что в этом синтаксе есть ошибка (которую я никогда не использую!). Просто используйте:

git tfs checkin -w12345: -m "Изменения в рабочем элементе 12345"

или git tfs checkin -w12345: -m "Изменения на рабочем месте 12345"

пройти через ошибку...

Но ошибка, которую вы получаете, говорит мне, что у вас есть большая проблема (не связанная с ассоциацией с рабочим элементом) и что вы что-то пропустили с помощью git-tfs (но я не вижу что:()

К вашему сведению, я НАСТОЯТЕЛЬНО предпочитаю использовать rcheckin чем checkin Команда, которая производит ужасную историю с большим количеством слияния.

rcheckin проще Выполняйте все ваши git коммиты, связывая рабочие элементы в вашем сообщении коммита, используя #12345, и когда вы счастливы, извлекайте из tfs, перебазируйте вашу работу (или сделайте git tfs pull -r) и делать:

git tfs rcheckin

Все должно быть хорошо!

Также посмотрите на наши варианты использования

Другие вопросы по тегам