Publish to S3 using Git?
Czy ktoś wie jak to zrobić? Do tej pory nie udało mi się znaleźć niczego przydatnego przez Google.
Naprawdę chciałbym skonfigurować lokalny repo i użyć git push
do opublikowania go na S3, idea jest taka, aby mieć lokalną kontrolę wersji nad zasobami, ale zdalną pamięcią masową Na S3.
7 answers
1 Użyj JGit poprzez http://blog.spearce.org/2008/07/using-jgit-to-publish-on-amazon-s3.html
Pobierz jgit.sh, Zmień nazwę na jgit i umieść w swojej ścieżce (na przykład $HOME / bin).
Setup the .plik konfiguracyjny jgit i dodaj następujące (zastępujące klucze AWS):
$vim~/.jgit
accesskey: aws access key
secretkey: aws secret access key
Uwaga, nie podając acl: public w .plik jgit, pliki git na S3 będą prywatne(czego chcieliśmy). Następnie utwórz wiadro S3 do Przechowuj swoje repozytorium, nazwijmy je git-repos, a następnie utwórz repozytorium git do przesłania:
s3cmd mb s3://git-repos
mkdir chef-recipes
cd chef-recipes
git init
touch README
git add README
git commit README
git remote add origin amazon-s3://.jgit@git-repos/chef-recipes.git
W powyższym używam narzędzia wiersza poleceń s3cmd do tworzenia wiadra, ale możesz to zrobić również za pośrednictwem interfejsu internetowego Amazon. Teraz przesuńmy go do S3 (zauważ, jak używamy jgit za każdym razem, gdy wchodzimy w interakcję z S3, a standard git w przeciwnym razie):
jgit push origin master
Teraz idź gdzie indziej (np. cd /tmp) i spróbuj go sklonować:
jgit clone amazon-s3://.jgit@git-repos/chef-recipes.git
Kiedy przyjdzie czas na aktualizację (bo jgit nie obsługuje merge lub pull) robisz to w 2 krokach:
cd chef-recipes
jgit fetch
git merge origin/master
2 Użyj FUSE-based file system wspierany przez Amazon S3
Załóż konto Amazon S3!
-
Pobierz, skompiluj i zainstaluj. (zobacz InstallationNotes)
-
Określ swoje poświadczenia bezpieczeństwa (identyfikator klucza dostępu i tajny dostęp Klucz) za pomocą jednej z następujących metod:
-
Użycie opcji wiersza poleceń passwd_file
-
Ustawienie zmienne środowiskowe AWSACCESSKEYID i AWSSECRETACCESSKEY
-
Za pomocą .plik passwd - s3fs w katalogu domowym
-
Używanie systemowego pliku/etc / passwd-s3fs
-
Do this
-
.
/usr/bin/s3fs mybucket /mnt
To jest to! zawartość wiadra amazon "mybucket" powinna być teraz dostępna do odczytu/zapisu w / mntWarning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-11-18 04:44:43
Dandelion to kolejne narzędzie CLI, które będzie synchronizować repozytoria Git z S3 / FTP/SFTP: http://github.com/scttnlsn/dandelion
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-04-03 20:08:32
Git-s3 - https://github.com/schickling/git-s3
You just have to run git-s3 deploy
Posiada wszystkie zalety repo git i przesyła / usuwa tylko pliki, które zmieniłeś.
Uwaga: wdrożenia nie są niejawne poprzez git push, ale można to osiągnąć poprzez Git hook.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-07-18 07:04:33
Możesz użyć MC aka Minio client, jego napisany w Golang i dostępny na licencji Open Source Apache License. Jest on dostępny dla komputerów Mac, Linux, Windows, FreeBsd. Możesz użyć polecenia mc mirror
, aby spełnić swoje wymagania.
Mc GNU / Linux Download
64-bit Intel from https://dl.minio.io/client/mc/release/linux-amd64/mc
32-bit Intel from https://dl.minio.io/client/mc/release/linux-386/mc
32-bit ARM from https://dl.minio.io/client/mc/release/linux-arm/mc
$ chmod +x mc
$ ./mc --help
Konfiguracja mc dla Amazon S3
$ mc config host add mys3 https://s3.amazonaws.com BKIKJAA5BMMU2RHO6IBB V7f1CwQqAcwo80UEIJEjc5gVQUSSx5ohQ9GSrr12
- Zastąp swoim kluczem dostępu / tajnego klucza
- domyślnie mc używa podpisu w wersji 4 amazon S3.
- mys3 to Alias Amazon S3 dla klient minio
Mirror your github local repozytorium / directory say name mygithub
nazwa wiadra amazon S3 mygithubbkp
$ ./mc mirror mygithub mys3/mygithubbkp
Hope it helps Zastrzeżenie: pracuję dla Minio
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-03-22 04:11:14
Możesz użyć deplybot ( http://deploybot.com / ) usługa bezpłatna dla pojedynczego repozytorium git.
Możesz zautomatyzować wdrażanie, wybierając opcję "Automatyczne" w sekcji Tryb wdrażania.
Używam go teraz. Jest to bardzo łatwe i użyteczne.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-01-21 10:40:44
Kontrola wersji plików z Github? Ten skrypt (i powiązane z nim konfiguracje GitHub / AWS) pobierze nowe commity do twojego repo i zsynchronizuje je z Twoim zasobnikiem S3.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-04-05 15:14:11
Potrzebujesz JGit do tego.
Po prostu zapisz .plik jgit w katalogu użytkownika z poświadczeniami aws i możesz używać git z s3.
Oto jak będzie wyglądał Twój URL Gita.
amazon-s3://.jgit@mybucket/myproject.git
Możesz zrobić wszystko, co robisz z git
z jgit
.
Https://metamug.com/article/jgit-host-git-repository-on-s3.php
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-03-09 15:43:31