Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

upload files to github directory using github api

I want to upload files from my system to a directory in github repo using the api .Is there any api endpoint which allows me to do that.

like image 333
ameya shukla Avatar asked Jul 28 '16 04:07

ameya shukla


People also ask

How do I upload a file to a specific folder in GitHub?

On your computer, move the file you'd like to upload to GitHub into the local directory that was created when you cloned the repository. Open Terminal . Change the current working directory to your local repository. Stage the file for commit to your local repository.


2 Answers

You should use the GitHub CRUD API which wans introduced in .May 2013

It includes:

  • File Create

    PUT /repos/:owner/:repo/contents/:path
    
  • File Update

    PUT /repos/:owner/:repo/contents/:path
    
  • File Delete

    DELETE /repos/:owner/:repo/contents/:path
    
like image 66
VonC Avatar answered Sep 18 '22 13:09

VonC


There's deffinitly a way to do it. This is how I did it;

curl -i -X PUT -H ‘Authorization: token 9xxxxxxxxxxxxxxxxxxxxxxxe2’ -d
‘{“message”: “uploading a sample pdf”,
“content”:”bXkgbm……………………………..”
}’ https://api.github.com/repos/batman/toys/contents/sample.pdf

Where the content property is a base64 encoded string of characters. I used this tool to encode my pdf file. https://www.freeformatter.com/base64-encoder.html

Notice, "batman" is the owner, "toys" is my repo, "contents" has to be there by default, and sample.pdf would the name of the file you want to upload your file as. In short, stick to this format: /repos/:owner/:repo/contents/:path And you can run the identical step for any of these files: PNG (.png) GIF (.gif) JPEG (.jpg) Log files (.log) Microsoft Word (.docx), Powerpoint (.pptx), and Excel (.xlsx) documents Text files (.txt) PDFs (.pdf) ZIP (.zip, .gz)

Good luck. Btw, I have these same details added on here: http://www.simplexanswer.com/2019/05/github-api-how-to-upload-a-file/

like image 28
user6304988 Avatar answered Sep 20 '22 13:09

user6304988