我正在编写一个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 "[email protected]"
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()