K-Ching
Anyone know what this button does?
Down to This |
You get the ankles, and I'll get the wrists. |
Sometimes, the pets do something that gives me a (questionably) great idea.
The original image is available if you want to do your own modifications.
At work, we have a project that started out small. As with most of our projects, it started with us learning more interesting and better ways of doing things as we became more familiar with the blocks with which we were building. Recently, the project grew big enough that it had actually become two projects. Unfortunately, they shared the same code repository, since they started as one. After a little bit of time in the office Om Lounge with my abacus, I figured out a fairly simple way to split these two repositories, but still retain the whole development history up until that point.
TL;DR Steps:
(My company uses GitHub, so my examples are using that.)
If you don't have a repo you'd like to split, but would like to follow along, make your self some dummy repos on GitHub and then create some test files. In my example, I'm splitting up repoA. I'm going to keep file1 in repoA and move file2 into a brand new repo, repoB.
First you need to figure out everything we want to keep in repoA. Create a new branch for the files you're keeping. Use git rm and git mv to rearrange the directory, reflecting it's look after the move is complete. Don't worry about deleting files, they all still exist in previous commits. (You did commit everything, right?)
Next, you need to figure out everything that's getting move to repoB. Check out master, so you get your original state back, then create a new branch for the files you're moving. Again, use git rm and git mv to rearrange the directory, reflecting the new repo's look after move is complete.
Now we're going to push the files that are moving, into their new home. Don't worry about setting up remotes, since you'll (hopefully) only be using this remote once. (Nerd note: remotes are just shorthand notation for a git URL, so we can use the URL directly here. Read more here)
Command Anatomy: 
Now that the moving files are safely moved to their destination, we need to finalize the move by merging the branch of files that are sticking around.
All that's left now, is to push our changes back to the original repository and clean up a bit.
You'll notice that git complains when it tries to delete the branch of files that are moving. It's letting us know that we're removing information from our repo by deleting that branch. We'll have to use -D instead of -d to let it know we really mean it.
That's it! Pretty easy, huh?
Check out my sample repos: repoA and repoB
Also, check out all the gist stuff on one page here: Gist.
Tonight, I connected to the internet, over my Verizon MiFi's 3G connection. I did this from a little over a mile away.
In my quest for inexpensive internet, I am establishing an 802.11a link with my office from my apartment. The distance for this link is around 1.1 miles. Tonight, with very little actual aiming and signal optimization, I was able to get around 45 Mbit of performance out of the link. The hardware I'm using is rated at 300Mbit over 5 miles, so I'm sure with a little bit of work, I can get that speed up to a limit where the bottle neck becomes the wires in my apartment.
Here's to living in the future!
It's funny how something as simple as a change in location can change your access to things.
Monday morning I walked to work listening to Röyksopp Forever. That gave me the idea to build a playlist of songs where a DJ had either sampled or worked with an orchestra. Eventually I ended up listening to albums from Röyksopp and Jon Hopkins all day while I worked.
Imagine my surprise when Dave popped his head into the office inviting me to see both of them live that night.
Too often I receive a letters from my readers asking how to properly transport a mattress. (Plural: mattressi) As an experienced mattress mover, I have learned by trial and often nearly fatal error, the optimal methods for transporting your mattress. I offer up to my readers, these three points, painfully learned, so that you may never suffer the need to drive around looking for escaped mattressi.
Look I have a couch! Maybe soon I'll have places to put this other crap. And some lights.