Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Automatically open a pull request on github by command line

I'm using git to versioning a collaborate project.

And I have two remotes. fork is a fork of an project, and origin is the original project.

So, could I when I send a push (git push fork master) automatically create a pull request available in origin to merge it?

I can't commit directly to origin (I know this is possible). I need push first to fork and if the admin aproves it, accept on origin. I would like automate this process, avoiding me to manually go to github and open a fork.

How could I do this?

Edit:

Private Organization:

name: Org
repository: main
branch: master

Private Fork:

name: OrgFork (A organization of mine with forks from **Org**) 
repository: main
branch: testing

I tried the following approach, but didn't worked yet:

curl -X POST -u <Username> -k -d '{"title": "<Title>","head": "Org:main","base": "testing"}' https://api.github.com/repos/Org/main/pulls

what is wrong? How can I fix this?

Edit 2

Another attempt:

hub pull-request "Testing" -b OrgFork:main:testing -h OrgFork:main:master
like image 582
GarouDan Avatar asked Mar 08 '13 20:03

GarouDan


People also ask

How do you trigger a pull request?

Create a pull request trigger You can set up pull request triggers for both Azure Repos or GitHub repositories. From within your project, Select Pipelines > Releases, and then select your release pipeline. Under the Pull request trigger section, select the toggle button to enable it.


2 Answers

You should check out hub, a command line tool to interact with GitHub.

Its README talks about making pull requests.

like image 162
mgarciaisaia Avatar answered Oct 04 '22 07:10

mgarciaisaia


Finally success

The first problem is that I was using the key password and not my github password.

With this structure:

Private Organization:

name: Org
repository: main
branch: master

Private Fork:

name: OrgFork (A organization of mine with forks from **Org**) 
repository: main
branch: testing

And the other problem is I was needing accept the corrects parameters, the final command looks like this one:

hub pull-request "Testing pull-request" -b Org:master -h OrgFork:testing

Thx for help @cjc343, @StevenPenny, @desert69 =)

like image 23
GarouDan Avatar answered Oct 04 '22 06:10

GarouDan