Wygląda na to, że musisz wejść w interakcję z github.com, aby zainicjować żądanie ściągnięcia. Czy tak jest
Wygląda na to, że musisz wejść w interakcję z github.com, aby zainicjować żądanie ściągnięcia. Czy tak jest
Odpowiedzi:
AKTUALIZACJA : Komenda hub jest teraz oficjalnym projektem github i obsługuje także tworzenie żądań ściągania
ORYGINAŁ :
Wydaje się, że szczególnie przydatne jest dodanie do polecenia hub: http://github.com/defunkt/hub lub gem github: http://github.com/defunkt/github-gem
Proponuję zgłosić problem z tymi projektami, które o to proszą. Chłopaki z github są dość responsywni.
gh pull-request [user] [branch]
.
hub
:hub pull-request -m "message pull request" -b master -h your_branch
hub merge https://github.com/repo/pull/1
Git jest teraz dostarczany z podkomendą 'git request-pull' [-p] <start> <url> [<end>]
Dokumenty możesz zobaczyć tutaj
Może się to przydać, ale nie jest to dokładnie to samo, co funkcja GitHub .
git pull
adres URL i gałąź wskazane w żądaniu ściągnięcia, aby scalić zmiany w lokalnym klonie i przesłać te zmiany do github.
Za pomocą otoki wiersza polecenia Hub możesz połączyć go z git, a następnie możesz to zrobić
git pull-request
Ze strony manuala hub:
git pull-request [-f] [TITLE|-i ISSUE|ISSUE-URL] [-b BASE] [-h HEAD]
Opens a pull request on GitHub for the project that the "origin" remote points to. The default head of the pull request is the current branch. Both base and head of the pull request can be explicitly given in one of the following formats: "branch", "owner:branch",
"owner/repo:branch". This command will abort operation if it detects that the current topic branch has local commits that are not yet pushed to its upstream branch on the remote. To skip this check, use -f.
If TITLE is omitted, a text editor will open in which title and body of the pull request can be entered in the same manner as git commit message.
If instead of normal TITLE an issue number is given with -i, the pull request will be attached to an existing GitHub issue. Alternatively, instead of title you can paste a full URL to an issue on GitHub.
brew install hub
To wydaje się być poprawną odpowiedzią dla użytkowników komputerów Mac.
Człowiek szuka jak ...
man git | grep pull | grep request
daje
git request-pull <start> <url> [<end>]
Ale pomimo nazwy nie jest to, czego chcesz. Według dokumentów:
Wygeneruj żądanie z prośbą do projektu o pobranie zmian w drzewie. Żądanie wydrukowane na standardowym wyjściu rozpoczyna się od opisu gałęzi, podsumowuje zmiany i wskazuje, skąd można je pobrać.
@HolgerJust wspomniał o klejnocie github, który robi to, co chcesz:
sudo gem install gh
gh pull-request [user] [branch]
Inni wspominali o oficjalnym hub
pakiecie github:
sudo apt-get install hub
lub
brew install hub
następnie
hub pull-request [-focp] [-b <BASE>] [-h <HEAD>]
git request-pull
linię. Tak, to ma sens, ale jestem zaskoczony, że git nie ma polecenia do wysyłania e-mailem żądań ściągania, jak robi to github. W końcu git config user.email
jest do niego dostępny. Zwłaszcza z poleceniem o nazwie pull-request
.
github-cli
to , że nie jest już dostępne po Precise ... Otworzyłem pytanie, aby poprosić o alternatywę.
Skończyłem tworzyć własne , okazało się, że działa lepiej w porównaniu z innymi dostępnymi rozwiązaniami.
Ostatnio stworzyłem narzędzie, które robi dokładnie to, co chcesz:
https://github.com/jd/git-pull-request
Automatyzuje wszystko za pomocą jednego polecenia, rozwidlając repozytorium, przesuwając PR itp. Obsługuje również aktualizację PR, jeśli musisz go edytować / naprawić!
Używam prostego aliasu, aby utworzyć żądanie ściągnięcia,
alias pr='open -n -a "Google Chrome" --args "https://github.com/user/repo/compare/pre-master...nawarkhede:$(git_current_branch)\?expand\=1"'
Oprócz tego github/hub
, który działa jako proxy dla Git , teraz (luty 2020) masz cli/cli
:
Zobacz „ Zwiększ swoje wrażenia z wiersza poleceń: GitHub CLI jest teraz w fazie beta ”
Utwórz żądanie ściągnięcia
Utwórz gałąź, wykonaj kilka zatwierdzeń, aby naprawić błąd opisany w problemie, i użyj gh, aby utworzyć żądanie ściągnięcia, aby udostępnić swój wkład.
Korzystając z interfejsu GitHub CLI do tworzenia żądań ściągania, automatycznie tworzy widelec, gdy jeszcze go nie masz, i wypycha gałąź i tworzy żądanie ściągnięcia, aby scalić zmianę.
W kwietniu 2020 r .: „ Interfejs GitHub CLI obsługuje teraz żądania automatycznego wypełniania i konfigurację niestandardową ”
GitHub CLI 0.7 jest dostępny z kilkoma najbardziej pożądanymi ulepszeniami wynikającymi z opinii naszych użytkowników wersji beta.
Od czasu ostatniego wydania, 0.6, istnieją trzy główne funkcje:
- Skonfiguruj,
gh
aby używać preferowanego edytora zgh config set editor [editor]
.- Skonfiguruj
gh
domyślnie na SSH za pomocągh config set git_protocol ssh
.
Domyślny protokół Git to HTTPS.- Wypełnij automatycznie tytuł i treść żądania ściągnięcia od swoich zatwierdzeń za pomocą
gh pr create --fill
.
Więc:
gh pr create --fill
Używałem tego narzędzia wcześniej - chociaż wydaje się, że najpierw musi być otwarty problem, jest on bardzo przydatny i naprawdę usprawnia przepływ pracy, jeśli używasz śledzenia problemów z github. git open-pull, a następnie przesyłane jest żądanie ściągania z dowolnego oddziału lub wybranego. https://github.com/jehiah/git-open-pull
EDYCJA: Wygląda na to, że możesz tworzyć problemy w locie, więc to narzędzie jest dobrym rozwiązaniem.