Vediamo di cosa si trattacome posso aggiungere git submodule a git repo come directory normale?
- creare due git repo
sub
&test
mkdir test sub cd test && git init && touch README && git add README && git commit -m "initialize the git repo" && cd .. cd sub && git init && touch README && git add README && git commit -m "initialize the sub git repo" && cd ..
- Spostare il
sub
pronti contro termine intest
mv sub test cd test git add sub git commit -m "add sub directory"
Voglio trattarli come un unico repository e inviarli da remoto, ma ora i file sotto la directory sub
non possono essere inclusi?
Come posso ottenere questo in modo semplice come trattare sub come directory normale?
Caso d'uso per questa
provo ad aggiungere la mia cartella dei dati Jenkins (JENKINS_HOME
) in immagini della finestra mobile utilizzando Dockerfile
per demo. (ADD JEKINS_HOME /opt/jenkins
)
JENKINS_HOME
Dockerfile
mio Jenkin ha scriptler plugin che contiene il repository git per il suo scopo. Poi esiste nella mia finestra mobile git repo come sotto
$ find jenkins-docker ./.git ./.git/.. (skipped ./Dockerfile ./JENKINS_HOME ./JENKINS_HOME/scriptler ./JENKINS_HOME/scriptler/scripts ./JENKINS_HOME/scriptler/scripts/.git ./JENKINS_HOME/scriptler/scripts/.git/... (skipped) ./JENKINS_HOME/scriptler/scripts/Sample.groovy ./JENKINS_HOME/... (skipped) ./README
sarebbe bene cambiare il behavier di quel plugin. lo script probabilmente non è poi così male. –
@LarryCai Se leggo correttamente questo codice, non supporta la personalizzazione GIT_DIR ... quindi non è possibile farlo a meno che non si modifichi il codice. https://github.com/jenkinsci/git-server-plugin/blob/42393f76d7f5678f9ca49f8a76252be2cfa244c2/src/main/java/org/jenkinsci/plugins/gitserver/FileBackedHttpGitRepository.java#L53 Esso dovrebbe avere 'setGitDir' con qualche valore personalizzabile , ma niente qui. – kan
no, quindi userò lo script per gestirlo. –