GitPython 无法设置 git 配置用户名和电子邮件

GitPython unable to set the git config username and email

我正在编写一个 python 脚本,该脚本使用 GitPython(https://gitpython.readthedocs.io/en/stable/) 将我的本地文件提交到远程存储库。对我的文件进行编辑后,我设置了用户名和电子邮件的值,如以下代码段所示:

      repo = git.Repo.init("my local clone path")
      repo.config_writer().set_value("name", "email", "myusername").release()
      repo.config_writer().set_value("name", "email", "myemail").release()
      repo.git.add("filename")
      repo.git.commit("filename")
      repo.git.push("my remote repo url")

我总是遇到以下错误:

 stderr: '
*** Please tell me who you are.

Run

  git config --global user.email "you@example.com"
  git config --global user.name "Your Name"

to set your account's default identity.
Omit --global to set the identity only in this repository.

尽管我已经使用 config_writer() 函数设置了我的用户名和密码,如下所述:http://gitpython.readthedocs.io/en/stable/tutorial.html#handling-remotes

任何有关如何解决此问题的建议将不胜感激。

set_value 目的地不正确。

repo.config_writer().set_value("name", "email", "myusername").release()
repo.config_writer().set_value("name", "email", "myemail").release()

这些行必须如下所示:

repo.config_writer().set_value("user", "name", "myusername").release()
repo.config_writer().set_value("user", "email", "myemail").release()

关于使用这个

repo.config_writer().set_value("user", "name", "myusername").release()
repo.config_writer().set_value("user", "email", "myemail").release()

我收到以下错误

"config_writer() missing 1 required positional argument: 'self'."

我使用

解决了它
os.system("git config --global user.name \"firstname lastname\"")
os.system("git config --global user.email \"youremail@email.com\"")