git-lfs 要求输入文件密码两次?

git-lfs 要求输入文件密码两次?

我在某些“登录服务器”上运行带有最新 git-lfs 的 git 2.92,该服务器安装了较旧的 Redhat(2.6.32-504.8.1.el6.x86_64 #1 SMP Fri Dec 19 12:09:25 EST 2014 x86_64 x86_64 x86_64 GNU/Linux)

我们最近将我们的存储库从 SVN 移到了 GIT,其中包括很多现在位于二进制存储库中的文件。

当我在本地 Ubuntu 上进行检出并设置 git-lfs 时,一切都运行良好。

但是当我在远程服务器上运行相同的过程时,实际的签出会询问我两次密码 - 针对 git-lfs 负责的每个文件。

我补充道

git config credential.helper 'cache --timeout=3600' 

到存储库配置;但没有变化。

有人知道吗?

答案1

这不是一个解决方案,而是一个变通方法——一个简单循环并“期望”密码请求...并提供它们;直到 EOF 的 Python 脚本。

#!/usr/bin/env python3

import pexpect
import sys

def main():
  command = input("Enter the command to invoke: ")
  password = input("Enter the password to send: ")

  child = pexpect.spawn(command)
  counter = 0

  while True:
    try:
        expectAndSendPassword(child, password)
        counter = logAndIncreaseCounter(counter)
    except pexpect.EOF:
        print("Received EOF - exiting now!")
        sys.exit(0)

def expectAndSendPassword(child, password):
  child.expect("Password .*")
  child.sendline(password)

def logAndIncreaseCounter(counter):
  print("Sent password ... count: {}".format(counter))
  return counter + 1

main()

如果有人发现这有帮助,请随意点赞 ;-)

相关内容