Come posso creare una cartella in un repository GitHub?


366

Voglio creare una cartella in un repository GitHub e voglio aggiungere file in quella cartella. Come posso raggiungere questo obiettivo?


3
So che questa è una domanda molto vecchia, ma che potrebbe comunque far risparmiare tempo a qualcuno. Il link seguente è una risposta che menziona come creare una cartella sul sito Web Github stesso. stackoverflow.com/questions/18773598/...
Nikhilesh


@Melebio, penso che la bandiera duplicata dovrebbe essere impostata su altre domande che hai appena menzionato perché questa domanda viene posta per prima, un anno fa rispetto alla tua menzionata.
iNet

@iPython AFAIK l'obiettivo duplicato dovrebbe piuttosto essere la domanda più chiara e / o con risposte più utili. Il criterio del tempo non è così importante.
Melebio

Risposte:


235

Git non memorizza cartelle vuote . Assicurati solo che ci sia un file nella cartella come doc / foo.txt ed esegui git add doco git add doc/foo.txte che la cartella verrà aggiunta al tuo repository locale dopo aver eseguito il commit (e visualizzata su GitHub dopo averlo premuto).


1
puoi dirmi il comando push. Io uso git push doc master. Mi mostra un errore.
Sagar

3
Se configuri il tuo repository su github come suggerisce il sito, sarebbe "git push origin master" - origin è il nome predefinito per il repository remoto e master è il nome predefinito del tuo ramo.
Moopet,


1
@GabrielFerraz che non è una soluzione migliore, è la stessa soluzione, semplicemente usando la GUI di GitHub!
Moopet,

1
@moopet Forse non è meglio (dato che i risultati sono gli stessi) ma più facile e veloce.
Gabriel Ferraz,

234

Non è possibile creare una cartella vuota e quindi aggiungere file a quella cartella, ma piuttosto la creazione di una cartella deve avvenire insieme all'aggiunta di almeno un singolo file. Su GitHub puoi farlo in questo modo:

  • Vai alla cartella all'interno della quale desideri creare un'altra cartella
  • Fai clic su Nuovo file
  • Nel campo di testo per il nome del file, scrivi prima il nome della cartella che desideri creare
  • Quindi digitare/ . Questo crea una cartella
  • Puoi aggiungere più cartelle in modo simile
  • Infine, assegna un nome al nuovo file (ad esempio, .gitkeepche viene utilizzato convenzionalmente per fare in modo che Git rintracci le cartelle altrimenti vuote; tuttavia non è una funzionalità Git)
  • Infine, fai clic su Salva nuovo file .

37

Per prima cosa devi clonare il repository sul tuo computer locale

git clone github_url local_directory

Quindi è possibile creare cartelle e file locali all'interno di local_directorye aggiungerli al repository usando:

git add file_path

Puoi anche aggiungere tutto usando:

git add .

Nota che Git non tiene traccia delle cartelle vuote. Una soluzione alternativa è quella di creare un file all'interno della cartella vuota che si desidera tracciare. Di solito lo chiamo quel file empty, ma può essere qualsiasi nome tu scelga.

Infine, ti impegni e rispedisci a GitHub:

git commit
git push

Per ulteriori informazioni su Git, consulta il libro Pro Git .


33

Per quelli che utilizzano il browser Web, è possibile effettuare le seguenti operazioni:

  • Una volta nel repository principale, fare clic su Create new file.
  • Nella casella del nome del file in alto, inserisci il nome della tua cartella
  • Utilizzare il tasto / dopo il nome della cartella. L'uso di questa barra in avanti crea la cartella
  • È possibile visualizzare una nuova casella accanto al nome della cartella in cui è possibile digitare il nome del file.
  • Nella casella Salva nuovo file nella parte inferiore della pagina, puoi digitare la descrizione per il tuo file.
  • Seleziona il pulsante di opzione Conferma direttamente nella masterdiramazione .
  • Fare clic sul Commit new filepulsante
  • Vedrai che verrà creata la nuova directory.

6

Crea un nuovo file e quindi sul nome del file usa la barra. Per esempio

Java / Helloworld.txt


3
Non penso che risponda alla domanda in modo molto chiaro o che aggiunga qualcosa alle risposte esistenti.
Moopet,

No, è stato utile.
Quidam,

1
Cosa intendi esattamente con "allora sul nome del file usa la barra" ? Puoi elaborare? Uno screenshot potrebbe essere utile.
Peter Mortensen,

2

In realtà GitHub non crea una cartella vuota.

Ad esempio, per creare una cartella in C:\Users\Username\Documents\GitHub\Repository:

  • Crea una cartella denominata docs

  • Crea un nome file index.htmlsotto documenti

  • Apri l'applicazione GitHub per desktop

    Si sincronizzerà automaticamente e sarà lì.


2

Fare clic sul nuovo file nel repository github online. Quindi scrivere il nome del file come myfolder/myfilenamequindi dare il contenuto del file e confermare. Quindi il file verrà creato all'interno di quella nuova cartella.


0

È sufficiente creare le cartelle richieste nel repository locale. Ad esempio, hai creato le directory appe config.

È possibile creare nuovi file in queste cartelle.

Per le regole Git:

  1. Per prima cosa dobbiamo aggiungere file alla directory.
  2. Quindi eseguire il commit di quei file aggiunti.

Comando Git per eseguire il commit:

  1. git add app/ config/
  2. git commit

Quindi dare il messaggio di commit e salvare il commit.

Quindi spingere nel repository remoto,

git push origin remote

aggiungo una cartella "pippo" nel mio repository locale e vi aggiungo un file. git add fooe commettilo. Allora git remote add foo <URL>allora git push foo master. L'ultimo comando mi mostra un errore. Dove sbaglio?
Sagar

1
Non è necessario eseguire "git remote add". Dopo aver aggiunto "git add foo /", quindi dare "git commit", verrà richiesto il messaggio di commit dare il messaggio di commit. Quindi spingere usando "git push origin master"
Mohanraj

0

Per aggiungere una nuova directory non devi fare altro che creare una nuova cartella nel tuo repository locale. Crea una nuova cartella e aggiungi un file al suo interno.

Ora vai al tuo terminale e aggiungilo come se aggiungessi i normali file in Git. Inseriscili nel repository e controlla lo stato per assicurarti di aver creato una directory.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.