2016-08-28 14 views

Odpowiedz

12

Dodaj do package.json:

... 
"scripts": { 
    "postinstall": "mkdir BotBuilder; cd BotBuilder; git init; git remote add -f origin https://github.com/Microsoft/BotBuilder.git; git config core.sparseCheckout true; echo \"Node/core\" >> .git/info/sparse-checkout; git pull --depth=1 origin master; cd ..; npm i ./BotBuilder/Node/core/" 
    ... 
}, 
... 

postinstall skrypt jest uruchomiony po zainstalowaniu pakietu.

i krok po kroku:

  1. folderu Producent sklonować repo: mkdir BotBuilder
  2. wejść do folderu: cd BotBuilder
  3. startowych git repo: git init
  4. zestaw git pochodzenie do Microsoft/BotBuilder repo : git remote add -f origin https://github.com/Microsoft/BotBuilder.git
  5. Włącz sparse checkout: git config core.sparseCheckout true
  6. dodać Node/core do listy kasy: część echo "Node/core" >> .git/info/sparse-checkout
  7. przyciąganie repo: git pull --depth=1 origin master
  8. wejść do folderu aplikacji: cd ..
  9. zainstalować BotBuilder: npm i ./BotBuilder/Node/core/
+0

Dziękujemy! To działa. – Ceridan

1

może być nieco off topic, tylko nadal istotne dla pytanie:

https://git-scm.com/book/en/v2/Git-Tools-Submodules

Submodules Git są repozytoriami git, które można wykorzystać w innych repozytoriach (zwanych dalej Supermodules). Z każdym modułem częściowym posiadającym zwykły asortyment cech i znaczników gałęzi, korzyść wynika z tego, że każdy supermoduł jest wersjonowanym, wtykowym komponentem, który może być przetwarzany oddzielnie lub rozwijany razem z supermodułem.

kilka przydatnych poleceń

Aby dodać submodule, należy uruchomić następujące wewnątrz SuperModułem:

git submodule add <url-to-submodule-repo> 

modułem (y) nadal muszą być inicjowane i idące z repo:

git submodule init git submodule update

SuperModule z submodułów mogą być klonowane i wszystkie Submoduły naciągane przez wykonanie:

git clone --recursive <url-to-supermodule>

można wyciągnąć upstream zmian w gałęzi modułem poprzez uruchomienie następujących wewnątrz katalogu submodule:

git fetch

Następnie uruchom następujące aktualizacje, aby zaktualizować kod lokalny:

git merge

Poniższa pobierze i scalania dla wszystkich submodules w swojej SuperModułem:

git submodule update --remote

Jeśli chcesz śledzić konkretny oddział modułem można użyć następujących:

git config -f .gitmodules submodule.<my-submodule>.branch fantastic_new_implementation

Jeśli pracowałeś nad supermodules i submodułami i popychałeś swój supermoduł, zmiany wprowadzone w submodułach będą istniały tylko lokalnie, a ci, z którymi współpracujesz, nie będą wiedzieli o tych zmianach. Poniższa komenda będzie sprawdzić, czy Submoduły zostały zepchnięte przed przystąpieniem do pchania SuperModule

git push --recurse-submodules=check

Wreszcie, tutaj jest przydatna ForEach komenda, która pozwala nam uruchomić polecenie za każdym modułem

git submodule foreach 'git checkout -b featureA

Powiązane problemy