ssh*_*270 2 python git git-push gitpython
我正在编写一个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")
Run Code Online (Sandbox Code Playgroud)
我总是遇到以下错误:
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.
Run Code Online (Sandbox Code Playgroud)
即使我已经使用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()
Run Code Online (Sandbox Code Playgroud)
这些行必须如下所示:
repo.config_writer().set_value("user", "name", "myusername").release()
repo.config_writer().set_value("user", "email", "myemail").release()
Run Code Online (Sandbox Code Playgroud)