mywiki/git/pull-request.md

92 lines
3.2 KiB
Markdown
Raw Normal View History

2023-02-04 16:03:52 +01:00
# Git: la Pull Request
La *Pull Request* è una richiesta, fatta allautore originale di un sofware o di un documento, di includere le modifiche al suo progetto.
Dopo aver trovato un progetto, si deve cliccare sul tasto `Fork`, in alto a destra:
2023-02-04 16:09:46 +01:00
![Fork](./asset/pull-request//fork1.png 'Fork di un progetto')
2023-02-04 16:03:52 +01:00
## Forkare un progetto
Il tasto `fork` creerà una copia del progetto sul nostro profilo personale di GitHub, Gitea o simili. Di questa copia non potrà essere toccato il ramo `master`, perchè appartiene agli sviluppatori originari del progetto, tuttavia è possibile creare un ramo secondario, ove apportare le dovute modifiche.
Nell'esempio, viene forkato il seguente progetto:
[https://github.com/wsdfhjxc/virtual-desktop-bar](https://github.com/wsdfhjxc/virtual-desktop-bar)
## Clonare il progetto
Ora basterà copiare il collegamento `ssh` al nostro progetto e clonarlo in locale, tramite i seguenti comandi:
```bash
git clone git@github.com:PicciHud/virtual-desktop-bar.git
```
2023-02-04 16:09:46 +01:00
![Clone](./asset/pull-request//clone.png 'Clonare un progetto')
2023-02-04 16:03:52 +01:00
Per la creazione delle chiavi `SSH`, seguire la precedente guida: [SSH](https://gitea.it/PicciHud/Appunti/wiki/SSH 'Creazione chiavi SSH')
## Creare un nuovo branch
Per apportare delle modifiche, occorre creare un ramo secondario, di sviluppo:
```bash
git branch dev
```
dove `dev` indica il nome del ramo.
È quindi possibile spostarsi nel nuovo ramo tramite il comando:
```bash
git checkout dev
```
## Apportare modifiche
Adesso è possibile apportare qualsiasi modifica al progetto, creando nuovi files, cartelle, o qualsiasi cosa si ritenga opportuna.
Nell'esempio, abbiamo modificato il file `install-applet.sh`, correggendo il `$PATH` del file `build-applet.sh`, oltre ad aver creato l'installer per Debian
2023-02-04 16:09:46 +01:00
![Modifiche](./asset/pull-request//mod.png 'Modifiche')
2023-02-04 16:03:52 +01:00
In pratica è stato risolto questo bug:
2023-02-04 16:09:46 +01:00
![Issue](./asset/pull-request//bug.png 'Issue')
2023-02-04 16:03:52 +01:00
Una volta terminato, aggiungere le modifiche alla *staging area*:
```bash
git add .
```
quindi il comando
```bash
git commit -a -m nome modifiche
```
salva la nuova versione del documento.
Infine il comando
```bash
git push set-upstream -origin dev
```
invia il nuovo ramo di sviluppo al nostro repository su GitHub o simili.
Si tratta di un comando abbastanza complicato da ricordare a memoria. Git però viene in aiuto, basterà quindi semplicemente ricordare il comando classico `git push` per ricevere da git un messaggio di errore che contiene lindicazione sulla sintassi esatta del comando da usare.
## Pull request
Su GitHub cliccare sul pulsante *Compare & Pull request* per avviare agli sviluppatori originari del progetto una richiesta di integrazione del nostro ramo con le nostre integrazioni e modifiche. Descriviamo i cambiamenti che abbiamo fatto e inviamo la Pull Request.
2023-02-04 16:09:46 +01:00
![Pull Request](./asset/pull-request//pullrequest1.png 'Pull Request')
2023-02-04 16:03:52 +01:00
Per approfondire i comandi di Git, si veda la seguente guida: [Git](https://gitea.it/PicciHud/Appunti/wiki/Git 'Comandi Git')
## Collegamenti
- [https://marcolombardo.com/blog/open/source/2019/03/13/iniziare-con-git-e-github-la-pull-request.html](https://marcolombardo.com/blog/open/source/2019/03/13/iniziare-con-git-e-github-la-pull-request.html)