Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

GitPython unable to set the git config username and email

I am writing a python script that uses GitPython(https://gitpython.readthedocs.io/en/stable/) to commit my local files to a remote repository. After making the edits to my files, I set the vaue of username and email as shown in the following snippet:

      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")

I always encounter the following error:

 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.

Even though I have set my username and password using config_writer() function as mentioned here: http://gitpython.readthedocs.io/en/stable/tutorial.html#handling-remotes

Any suggestions on how to fix this will be highly appreciated.

like image 203
sshussain270 Avatar asked Apr 30 '18 16:04

sshussain270


1 Answers

set_value destinations are incorrect here.

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

These lines have to be like following:

repo.config_writer().set_value("user", "name", "myusername").release()
repo.config_writer().set_value("user", "email", "myemail").release()
like image 165
set0gut1 Avatar answered Sep 21 '22 11:09

set0gut1