43 lines
		
	
	
	
		
			1.7 KiB
			
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			43 lines
		
	
	
	
		
			1.7 KiB
			
		
	
	
	
		
			Markdown
		
	
	
	
	
	
git-annex extends git's usual remotes with some [[special_remotes]], that
 | 
						|
are not git repositories. This way you can set up a remote using say,
 | 
						|
Amazon S3, and use git-annex to transfer files into the cloud.
 | 
						|
 | 
						|
First, export your Amazon AWS credentials:
 | 
						|
 | 
						|
	# export AWS_ACCESS_KEY_ID="08TJMT99S3511WOZEP91"
 | 
						|
	# export AWS_SECRET_ACCESS_KEY="s3kr1t"
 | 
						|
 | 
						|
Now, create a gpg key, if you don't already have one. This will be used
 | 
						|
to encrypt everything stored in S3, for your privacy. Once you have
 | 
						|
a gpg key, run `gpg --list-secret-keys` to look up its key id, something
 | 
						|
like "2512E3C7"
 | 
						|
 | 
						|
Next, create the S3 remote, and describe it. 
 | 
						|
 | 
						|
	# git annex initremote cloud type=S3 chunk=1MiB keyid=2512E3C7
 | 
						|
	initremote cloud (encryption setup with gpg key C910D9222512E3C7) (checking bucket) (creating bucket in US) (gpg) ok
 | 
						|
	# git annex describe cloud "at Amazon's US datacenter"
 | 
						|
	describe cloud ok
 | 
						|
 | 
						|
The configuration for the S3 remote is stored in git. So to make another
 | 
						|
repository use the same S3 remote is easy:
 | 
						|
 | 
						|
	# export AWS_ACCESS_KEY_ID="08TJMT99S3511WOZEP91"
 | 
						|
	# export AWS_SECRET_ACCESS_KEY="s3kr1t"
 | 
						|
	# git pull laptop
 | 
						|
	# git annex enableremote cloud
 | 
						|
	enableremote cloud (gpg) (checking bucket) ok
 | 
						|
 | 
						|
Notice that to enable an existing S3 remote, you have to provide the Amazon
 | 
						|
AWS credentials because they were not stored in the repository. (It is
 | 
						|
possible to configure git-annex to do that, but not the default.)
 | 
						|
 | 
						|
## further reading
 | 
						|
 | 
						|
See [[special_remotes/S3]] for details about configuring S3 remotes.
 | 
						|
 | 
						|
See [[public_Amazon_S3_remote]] for how to set up a Amazon S3 remote that
 | 
						|
can be used by the public, without them needing AWS credentials.
 | 
						|
 | 
						|
If you want to publish files to S3 so they can be accessed without using
 | 
						|
git-annex, see [[publishing_your_files_to_the_public]].
 |