2016-04-29 3 views
5

TFS 2015 Update 2 приносит поддержку Git LFS, но когда я пытался использовать его с виртуальной машиной Brian Keller VS2015ALM (повышен до Update 2), я получил это исключение:Использование Git LFS с TFS 2015 Update 2 OnPremise

git-lfs/1.2.0 (GitHub; windows amd64; go 1.6.1; git 386c5d8) 
git version 2.8.1.windows.1 

$ git-lfs.exe smudge -- Image1.jpg 
Error downloading object: Image1.jpg (968bda1e0a17e295e265311f93bc4e631e171 
d776d51c6d7a43b52185c82631a) 

Your user name must be of the form DOMAIN\user. It is currently brian%!(EXTRA st 
ring=string) 
goroutine 1 [running]: 
github.com/github/git-lfs/lfs.Stack(0x0, 0x0, 0x0) 
     C:/Users/techn/go/src/github.com/github/git-lfs/lfs/errors.go:566 +0x87 
github.com/github/git-lfs/commands.logPanicToWriter(0x1a42c0, 0xc082020020, 0x1b 
54a0, 0xc0823ae1a0) 
     C:/Users/techn/go/src/github.com/github/git-lfs/commands/commands.go:195 
+0xf87 
github.com/github/git-lfs/commands.logPanic(0x1b54a0, 0xc0823ae1a0, 0x0, 0x0) 
     C:/Users/techn/go/src/github.com/github/git-lfs/commands/commands.go:159 
+0x419 
github.com/github/git-lfs/commands.handlePanic(0x1b54a0, 0xc0823ae1a0, 0x0, 0x0) 

     C:/Users/techn/go/src/github.com/github/git-lfs/commands/commands.go:134 
+0x55 
github.com/github/git-lfs/commands.LoggedError(0x1b54a0, 0xc0823ae1a0, 0xa25980, 
0x21, 0xc082029c88, 0x2, 0x2) 
     C:/Users/techn/go/src/github.com/github/git-lfs/commands/commands.go:84 
+0x89 
github.com/github/git-lfs/commands.smudgeCommand(0xc52680, 0xc0820f81e0, 0x1, 0x 
2) 
     C:/Users/techn/go/src/github.com/github/git-lfs/commands/command_smudge. 
go:79 +0xdd2 
github.com/github/git-lfs/vendor/_nuts/github.com/spf13/cobra.(*Command).execute 
(0xc52680, 0xc0820f8040, 0x2, 0x2, 0x0, 0x0) 
     C:/Users/techn/go/src/github.com/github/git-lfs/vendor/_nuts/github.com/ 
spf13/cobra/command.go:477 +0x3fb 
github.com/github/git-lfs/vendor/_nuts/github.com/spf13/cobra.(*Command).Execute 
(0xc536c0, 0x0, 0x0) 
     C:/Users/techn/go/src/github.com/github/git-lfs/vendor/_nuts/github.com/ 
spf13/cobra/command.go:551 +0x593 
github.com/github/git-lfs/commands.Run() 
     C:/Users/techn/go/src/github.com/github/git-lfs/commands/commands.go:99 
+0x2a 
main.main() 
     C:/Users/techn/go/src/github.com/github/git-lfs/git-lfs.go:34 +0x135 

ENV: 
LocalWorkingDir=C:\Users\Brian\Source\Repos\DemoGitLfs 
LocalGitDir=C:\Users\Brian\Source\Repos\DemoGitLfs\.git 
LocalGitStorageDir=C:\Users\Brian\Source\Repos\DemoGitLfs\.git 
LocalMediaDir=C:\Users\Brian\Source\Repos\DemoGitLfs\.git\lfs\objects 
LocalReferenceDir= 
TempDir=C:\Users\Brian\Source\Repos\DemoGitLfs\.git\lfs\tmp 
ConcurrentTransfers=1 
BatchTransfer=true 
GIT_DIR=.git 
GIT_LFS_PATH=C:\Program Files\Git LFS 
GIT_PREFIX= 

Это добавляется, когда я пытался нажать git.exe и работает после первого нажатия VS2015U2. Но теперь я получил эту ошибку, когда я пытаюсь повторить клонирование моего репо (сбой при проверке) с помощью git.exe или VS2015U2. Кстати, в этом случае VS полностью сбой. Я пробовал те же операции с VSTS, и ошибок не возникало (с git.exe, GitExtensions или VS2015U2). Таким образом, кажется, что проблема с предоставлением учетных данных, но как их исправить?

Repo шаги:

  1. Создать репозиторий на веб-портале TFS
  2. Clone это с VS или GIT
  3. Выполнить "GIT LFS установить"
  4. Выполнить "мерзавец LFS фильтра трек" *. JPG «»
  5. Добавить изображение в рабочее пространство
  6. Commit
  7. Выполнить «мерзавец толчок ориг в мастер»=> не удалось с git.exe
  8. Execute„GIT нажимной мастер происхождения“=> работает с VS
  9. Добавление второго изображения и фиксации
  10. Толчок теперь работает с git.exe
  11. Удалить локальный хранилище
  12. Clone репо => не удался на кассе с git.exe или VS

Я попытался с «клоном -n», чтобы избежать немедленной проверки, то я исполню «Git LFS установить» и «GIT мастер оформления заказа» , такое же исключение: Ваш пользователь nam e должен иметь вид DOMAIN \ user. В настоящее время brian%! (EXTRA st ring = string)

+0

Возможный дубликат [LFS: учетные данные Git для ..XXXX..не найдено. Ваше имя пользователя должно иметь вид DOMAIN \ user] (https://stackoverflow.com/questions/42986608/lfs-git-credentials-for-xxxx-not-found-your-user-name-must-be-of -The форм-делать) –

ответ

3

Git Credential Manager for Windows помогает мне заставить его работать.

Просто используйте ГКМВ и при первой верительных строке (учетные данные хранятся в ОС Windows Credential Manager):

  • имя: "vsalm \ Брайану"
  • пароль: "P2ssw0rd"

И это работает.

  • Без GCMW это не сработает.
  • Он работает с ГК предоставленных установкой Git 2.8, ручной установкой 1.2.2 и 1.3 (путем добавления «[учетный] = хелперы менеджер» в gitconfig)

Примечания: Клон с VS2015U2 Безразлично Не работает, исправление - это план в U3. Дополнительная информация: https://connect.microsoft.com/VisualStudio/feedback/details/2657886/cant-use-git-lfs-with-tfs-2015-update-2-onpremise

0

Согласно исключению ошибки, ваш сервер TFS использует «NTLM» для аутентификации. С помощью этой аутентификации вы должны ввести имя пользователя: {DOMAIN} {user} и пароль: {pass}. Поэтому обновите свои учетные данные git до этого формата, а затем повторите попытку. Проверьте эту ссылку для получения более подробной информации: NTLM Authentication With Git-Lfs.

Если сервер LFS возвращает. "Www-Authenticate: NTLM" заголовок, мы набор LFS {конечной} .access быть NTLM и повторите запрос HTTP. Последующие запросы будут проходить через поток ntlm auth.

Мы будем хранить учетные данные NTLM в доверенном помощнике. Когда пользователь будет запрашивать учетные данные, они должны использовать имя пользователя: {DOMAIN} {пользователь} и пароль: {Передают}

NTLM protocl будет обрабатываться классом ntlm.go, который скрывает реализацию InitHandshake , Authenticate и Challenge. Этот позволяет совершать небольшие изменения в существующем классе client.go.

Смежные вопросы