bovineone
bovineone

Reputation: 303

Using GIT on USB stick for "travelling code"

I have exhaustively searched for answers to my question here and on Google. I have found some great resources and learning tools for understanding Git and what it does, but I need to get some clarification, and assistance.

What I am doing is working on a side-project for work both at my office and at home. (I'm migrating C# code to Java to help me learn both languages.)

The setup:

Note: Using Github is not an option.

Purpose/Goal:

What I am trying to do is keep the code as much in order, with version control, as possible by using Git, but in setting it up at work, for some reason I'm a bit afraid it won't work the same when I get home. (Side note: I sense a "This is of the beauty of git." type answer somewhere.)

My questions are:

Sorry for the length, but I wanted to provide as much information as possible. Thanks ahead of time for any information anyone can provide after wading through my novel.

Upvotes: 18

Views: 17172

Answers (5)

Gene De Lisa
Gene De Lisa

Reputation: 3838

Just a suggestion:

I use Truecrypt with my USB sticks. My code goes into a tc volume. In case I lose the stick - which is fairly common with those things - the finder doesn't get my code.

Upvotes: 2

Abizern
Abizern

Reputation: 150655

Using the USB stick to keep the code and the repository on is one option - you get the advantages of portability and version control.

But, another way to do this is to keep a bare repo on the USB stick (or dropbox) and on each machine that you want to use the code, make a clone of this. When you finish doing what you are doing you can just push your changes upstream (to the USB stick or Dropbox or wherever).

Having a bare clone portable means that if you forget (or $DEITY forbid) lose the stick in it's travels, you won't be left holding your…without any code to work on. You can recreate a clone from any of the repositories if you've lost the key, and, if you forget the key at home or work or somewhere else, there is always something you can do on your project and merge the changes with the key when next they are together.

Upvotes: 11

Philip Oakley
Philip Oakley

Reputation: 14071

Another way is via bundles. This assumes you are using an independent machine, see how-to-use-git-in-a-sneakernet-environment

Upvotes: 1

Dave G
Dave G

Reputation: 9777

Try keeping a bare repo on the usb stick and clone it to the machines you are working on.

Before you pack up for the day or complete to remove your stick, push your changes back to the "origin" (which is the bare repo on the stick).

When you open up on your other workstation (home?) fetch your changes.

Upvotes: 20

Daenyth
Daenyth

Reputation: 37461

One common solution is to keep a bare repo in dropbox and push/pull with that to keep your computers in sync.

Upvotes: 2

Related Questions