summaryrefslogtreecommitdiff
path: root/_posts
diff options
context:
space:
mode:
Diffstat (limited to '_posts')
-rw-r--r--_posts/2009-06-14-mac-git-installation.textile6
-rw-r--r--_posts/2009-06-15-mac-key-setup.textile8
-rw-r--r--_posts/2009-06-15-msysgit-key-setup.textile8
-rw-r--r--_posts/2009-06-16-forking.textile10
-rw-r--r--_posts/2009-06-17-troubleshooting-ssh.textile12
-rw-r--r--_posts/2009-06-20-git-email-settings.textile6
-rw-r--r--_posts/2009-06-23-security.textile10
-rw-r--r--_posts/2009-06-25-moving-a-repo.textile8
-rw-r--r--_posts/2009-07-04-git-html-help.textile4
9 files changed, 36 insertions, 36 deletions
diff --git a/_posts/2009-06-14-mac-git-installation.textile b/_posts/2009-06-14-mac-git-installation.textile
index ae3bada..085fbf2 100644
--- a/_posts/2009-06-14-mac-git-installation.textile
+++ b/_posts/2009-06-14-mac-git-installation.textile
@@ -7,11 +7,11 @@ categories: mac setup
main_category: setup
---
-h3. Pre-compiled Installer
+h2. Pre-compiled Installer
Download and run "git-osx-installer":http://code.google.com/p/git-osx-installer/
-h3. MacPorts
+h2. MacPorts
# Install "MacPorts":http://macports.org/install.php if you haven't already done so.
# Make sure your ports are up to date.
@@ -40,6 +40,6 @@ $ sudo port install git-core +svn
---> Activating git-core 1.5.5.3_0+doc
</pre>
-h3. Compiling git manually
+h2. Compiling git manually
See "compiling and installing git on mac os x":http://github.com/guides/compiling-and-installing-git-on-mac-os-x.
diff --git a/_posts/2009-06-15-mac-key-setup.textile b/_posts/2009-06-15-mac-key-setup.textile
index b19be36..ff33404 100644
--- a/_posts/2009-06-15-mac-key-setup.textile
+++ b/_posts/2009-06-15-mac-key-setup.textile
@@ -9,7 +9,7 @@ main_category: setup
Generating an SSH key on OSX is a fairly straightforward process. First and foremost, open up Terminal.app. You can usually find it at @/Applications/Utilities@.
-h3. Backup and remove existing keys
+h2. Backup and remove existing keys
Unless this is your first time setting up ssh or git on your computer, you should doublecheck that keys do not already exist. If they do you can either use the existing key(s) or remove them. In either case, you should make a backup of the keys.
@@ -23,7 +23,7 @@ $ rm .ssh/id_rsa*</pre>
Here we have an existing keypair, @id_rsa@ and @id_rsa.pub@, which we've copied into @~/ssh_key_backup@ before removing. By default, ssh will use keys in @~/.ssh@ that are named @id_rsa@, @id_dsa@ or @identity@.
-h3. Generating a key
+h2. Generating a key
p(. _If you have an existing keypair you wish to use, you can skip this step._
@@ -53,7 +53,7 @@ The key's randomart image is:
At each prompt we just hit enter. This will generate the key with the default name and no passphrase. If you want to add a passphrase to your key you can do so later. You will be prompted for the passphrase every time you push or pull from GitHub, so you might not want to use one unless you are using a shared computer.
-h3. Adding the key to your GitHub account
+h2. Adding the key to your GitHub account
Now launch your browser and open the "account page":https://github.com/account. In the "SSH Public Keys" section click "add another public key", then paste your public key into the "key" field. If you leave the title blank the key comment (your email) will be used for the title.
@@ -61,7 +61,7 @@ Make sure you use the public key (@id_rsa.pub@ in our example), and do not add a
!/images/add_key.png!
-h3. Testing things out
+h2. Testing things out
Testing if our new key works is simple:
diff --git a/_posts/2009-06-15-msysgit-key-setup.textile b/_posts/2009-06-15-msysgit-key-setup.textile
index b0a12eb..651dd9a 100644
--- a/_posts/2009-06-15-msysgit-key-setup.textile
+++ b/_posts/2009-06-15-msysgit-key-setup.textile
@@ -9,7 +9,7 @@ main_category: setup
Generating an SSH key with msysgit is a fairly straightforward process. First and foremost, make sure you're working in the Git Bash console, not cmd (the default Windows command line). You can find Git Bash under the git folder in your start menu, or by right clicking on a folder and selecting "Git Bash Here" if you choose to install context menu items during the msysgit installation.
-h3. Backup and remove existing keys
+h2. Backup and remove existing keys
Unless this is your first time installing msys on your computer, you should doublecheck that keys do not already exist. If they do you can either use the existing key(s) or remove them. In either case, you should make a backup of the keys.
@@ -23,7 +23,7 @@ $ rm .ssh/id_rsa*</pre>
Here we have an existing keypair, @id_rsa@ and @id_rsa.pub@, which we've copied into @~/ssh_key_backup@ before removing. By default, ssh will use keys in @~/.ssh@ that are named @id_rsa@, @id_dsa@ or @identity@.
-h3. Generating a key
+h2. Generating a key
p(. _If you have an existing keypair you wish to use, you can skip this step._
@@ -41,7 +41,7 @@ e8:ae:60:8f:38:c2:98:1d:6d:84:60:8c:9e:dd:47:81 tekkub@gmail.com</pre>
At each prompt we just hit enter. This will generate the key with the default name and no passphrase. If you want to add a passphrase to your key you can do so later. You will be prompted for the passphrase every time you push or pull from GitHub, so you might not want to use one unless you are using a shared computer.
-h3. Adding the key to your GitHub account
+h2. Adding the key to your GitHub account
Now launch your browser and open the "account page":https://github.com/account. In the "SSH Public Keys" section click "add another public key", then paste your key into the "key" field. If you leave the title blank the key comment (your email) will be used for the title.
@@ -49,7 +49,7 @@ Make sure you use the public key (@id_rsa.pub@ in our example), and do not add a
!/images/add_key.png!
-h3. Testing things out
+h2. Testing things out
Testing if our new key works is simple:
diff --git a/_posts/2009-06-16-forking.textile b/_posts/2009-06-16-forking.textile
index 75299bb..b65c4c8 100644
--- a/_posts/2009-06-16-forking.textile
+++ b/_posts/2009-06-16-forking.textile
@@ -10,7 +10,7 @@ In this guide, we will use "github-services":http://github.com/pjhyett/github-se
Note that this works for pulling from a forked repository to the original, as well.
-h3. Setting up
+h2. Setting up
Naturally, the first thing you must do is create your fork. To do this, you simply click the !http://github.com/images/modules/repos/fork_button.png! button on the project's page. When the fork has completed, you will be presented with your new repo information.
@@ -24,7 +24,7 @@ $ git fetch upstream</pre>
Note that we used the public clone URL for upstream, so we can't push changes directly to it. We probably don't have permission to do that anyway, which is why we're creating a fork in the first place.
-h3. Pushing your changes
+h2. Pushing your changes
Now that we've got our fork, we need to make a few changes and commit them locally. Once you've done this, it's time to push your updated branch.
<pre>$ git push origin master</pre>
@@ -33,7 +33,7 @@ After you've pushed your commit(s) you need to inform the project owner of the c
_Note that some projects do not accept pull requests. Make sure you submit your request to the place they want it, or you will probably just be ignored._
-h3. Pulling in upstream changes
+h2. Pulling in upstream changes
Some time has passed, the upstream repo has changed and you want to update your fork before you submit a new patch. There are two ways to do this:
<pre>$ git fetch upstream master
@@ -49,11 +49,11 @@ Now that your local branch has been updated, you can commit, push, and send a pu
You may wish to do the fetch and merge manually, instead of letting git-pull do it for you. This can sometimes help avoid headaches caused by mysterious merge conflicts.
-h3. Deleting the forked repository
+h2. Deleting the forked repository
To remove the fork, just delete it like any repo: click the "Edit" button next to "pull request", then at the bottom of the page there will be a "Delete This Repository…" link.
-h3. Additional resources
+h2. Additional resources
* "github-gem":http://github.com/defunkt/github-gem - Handy tool for pulling in forked branches
* "Rails on the Run forking tutorial":http://railsontherun.com/2008/3/3/how-to-use-github-and-submit-a-patch \ No newline at end of file
diff --git a/_posts/2009-06-17-troubleshooting-ssh.textile b/_posts/2009-06-17-troubleshooting-ssh.textile
index c5c6dee..a537568 100644
--- a/_posts/2009-06-17-troubleshooting-ssh.textile
+++ b/_posts/2009-06-17-troubleshooting-ssh.textile
@@ -12,15 +12,15 @@ Hi username! You've successfully authenticated, but GitHub does not provide shel
If this step fails, try running <code>ssh -v git@github.com</code>. This will print out debug info on what ssh is trying to do. In this output you should check that ssh is connecting to the correct server, on the correct port (22). Many firewalls and proxies will block this connection. Also ensure that ssh is reading the correct key files, these are at ~/.ssh/id_rsa, id_dsa and identity by default. If your key is not at this location, you should move it or create an override (see the "SSH config" section below).
-h3. Permission to user/repo2 denied to user/repo1
+h2. Permission to user/repo2 denied to user/repo1
This error occurs when you attach your key as a deploy key on repo1. You can push and pull from that repo without issue, but you won't have access to any other repo with your key. To solve this, remove the key from repo1's deploy keys and attach it on your "account page":https://github.com/account instead. This key will now have access to all repos your account has access to.
-h3. Permission denied (publickey)
+h2. Permission denied (publickey)
This is usually caused when ssh cannot find your keys. Make sure your key is in the default location, @~/.ssh@. If you run @ssh-keygen@ again and just press enter at all 3 prompts it will be placed here automatically. Then you can add the contents of id_rsa.pub to "my github keys":https://github.com/account. If id_rsa.pub doesn't work try id_dsa.pub. You might need to generate a new dsa key with @ssh-keygen -t dsa@ if you just have an rsa key.
-h3. Issues when using sudo
+h2. Issues when using sudo
p((. _You shouldn't run @sudo git@ unless you have a very good reason. If you don't know if you have a good reason to use sudo, it's likely that you do not have one._
@@ -28,7 +28,7 @@ If you are using sudo with git commands (e.g. using <code>sudo git clone</code>
Simply put, if you are using <code>sudo git</code>, then also use <code>sudo ssh-keygen</code>.
-h3. SSH config
+h2. SSH config
If your github authentication information is different from your machine account information, you'll need to modify your ssh configuration file.
@@ -45,7 +45,7 @@ You may also need to update the permissions on your .ssh folder and its contents
<pre>$ chmod 700 ~/.ssh
$ chmod 600 ~/.ssh/*</pre>
-h3. No supported authentication methods available
+h2. No supported authentication methods available
You should be aware of the environment variable GIT_SSH, which is used by git to find your ssh-speaking client, if ssh doesn't work for you. The git install may be using plink.exe (via GIT_SSH) to perform the authentication. If so, make sure you have pageant.exe running, and the key you created for github loaded into it. This provides the key to plink.exe; without it, the above error will occur.
@@ -67,6 +67,6 @@ p(. I did not have luck with this approach; GIT_SSH was set to plink.exe already
p(. I couldn't get the latest versions of plink and pageant (as of 2008-Nov-15) to talk, and I'm not running Cygwin. The only solution was to revert to using open-ssh by setting @GIT_SSH@ to @C:\Program Files\prg\Git\bin\ssh.exe@. -- "dandv":http://github.com/dandv
-h3. On Windows, you can't type "y" to confirm the "Store [server's host] key in cache?" prompt
+h2. On Windows, you can't type "y" to confirm the "Store [server's host] key in cache?" prompt
This happens because git eats up the ssh client's STDIN output. To work around that, launch @ssh github.com@ or @plink.exe -agent github.com@ standalone and press "y" at the prompt.
diff --git a/_posts/2009-06-20-git-email-settings.textile b/_posts/2009-06-20-git-email-settings.textile
index fd01a96..4a1d08d 100644
--- a/_posts/2009-06-20-git-email-settings.textile
+++ b/_posts/2009-06-20-git-email-settings.textile
@@ -6,7 +6,7 @@ description: Configure your local git installation so that commits are linked to
categories: setup
---
-h3. Setting user name and email globally in git
+h2. Setting user name and email globally in git
Git needs to know your username and email address to properly credit your commits. Setting this setting will also let GitHub link the commits you make to your GitHub account. Only commits made after you change this setting will use the new info, old commits will preserve the info they were committed with.
@@ -15,7 +15,7 @@ p(. _The "email" setting does not have to be a valid email address, it only need
<pre>$ git config --global user.name "Tekkub"
$ git config --global user.email "tekkub@gmail.com"</pre>
-h3. Overriding settings for individual repos
+h2. Overriding settings for individual repos
If you do not want commits to be "blamed" on your global email setting, you can override these settings on a per-repo basis.
@@ -25,7 +25,7 @@ p(. _This change will only affect future commits. Existing commits will retain
$ git config user.name "Not Tekkub"
$ git config user.email "not@tekkub.net"</pre>
-h3. GitHub token config
+h2. GitHub token config
Some tools connect to GitHub without SSH, for these tools you need to set your "local GitHub config":http://github.com/blog/180-local-github-config. You can find your token at the top of the "account page":https://github.com/account
diff --git a/_posts/2009-06-23-security.textile b/_posts/2009-06-23-security.textile
index 711e29a..b616694 100644
--- a/_posts/2009-06-23-security.textile
+++ b/_posts/2009-06-23-security.textile
@@ -4,27 +4,27 @@ title: GitHub security
subtitle: This guide details GitHub's server security design and practices.
---
-h3. Engine Yard security
+h2. Engine Yard security
Our host, Engine Yard, has a PDF available on their security practices "here":http://www.engineyard.com/docs/EY_Security_WP.pdf.
-h3. Communications
+h2. Communications
All private data exchanged with GitHub is always transmitted over SSL (which is why your dashboard is served over HTTPS, for instance). All pushing and pulling of private data is done over SSH authenticated with keys, not passwords.
The SSH login credentials used to push and pull can not be used to access a shell or the filesystem. All users are virtual (meaning they have no user account on our machines) and are access controlled through the peer reviewed, open source git-shell.
-h3. File system and backups
+h2. File system and backups
We do not encrypt repositories on disk because it would not be any more secure: the website and git back-end would need to decrypt the repositories on demand, slowing down response times. Any user with shell access to the file system would have access to the decryption routine, thus negating any security it provides. Therefore, we focus on making our machines and network as secure as possible.
Our database and your repositories are backed up nightly off-site. We do not retroactively remove repositories from backups when deleted by the user, as we may need to restore the repo for the user if it was removed accidentally.
-h3. Employee access
+h2. Employee access
No GitHub employees ever access private repositories unless required to for support reasons. Staff working directly in the file store access the compressed Git database, your code is never present as plaintext files like it would be in a local clone. Support staff may log into your account to access settings related to your support issue. In rare cases staff may need to pull a clone of your code, this will only be done with your consent. Support staff does not have direct access to clone any repo, he will need to temporarily attach his SSH key to your account to pull a clone. When working a support issue we do our best to respect your privacy as much as possible, we only access the files and settings needed to resolve your issue. All cloned repos are deleted as soon as the support issue has been resolved.
-h3. Maintaining security
+h2. Maintaining security
We protect your login from brute force attacks with rate limiting. All passwords are filtered from all our logs and encrypted. Login information is always sent over SSL.
diff --git a/_posts/2009-06-25-moving-a-repo.textile b/_posts/2009-06-25-moving-a-repo.textile
index 33bdd84..d817cea 100644
--- a/_posts/2009-06-25-moving-a-repo.textile
+++ b/_posts/2009-06-25-moving-a-repo.textile
@@ -6,11 +6,11 @@ description: How to move a repo from one account to another
categories: repos
---
-h3. Creating a new repo
+h2. Creating a new repo
The first step to moving a repo is to create a new repo on the target account. If your current repo is public, you can simply fork the repo while logged into the target account. If the repo is private, you will need to create a new private repo on the target account to push to.
-h3. Creating a mirror
+h2. Creating a mirror
p(. _If you forked this step is not necessary, but you may still do it for good measure._
@@ -22,11 +22,11 @@ git push --mirror git@github.com:mycompany/our-new-repo.git
cd ..
rm -rf my-old-repo</pre>
-h3. Reparenting forks
+h2. Reparenting forks
If your original repo has forks that you wish to reparent to the new repo, please "file a support ticket":http://support.github.com/.
*Do not delete the original repo until the reparenting is complete!*
-h3. Collaborators
+h2. Collaborators
If your original repo had collaborators, they will not be copied. You will need to add each user as a collaborator on the new repo. \ No newline at end of file
diff --git a/_posts/2009-07-04-git-html-help.textile b/_posts/2009-07-04-git-html-help.textile
index 7ccfd9f..1d171f3 100644
--- a/_posts/2009-07-04-git-html-help.textile
+++ b/_posts/2009-07-04-git-html-help.textile
@@ -8,7 +8,7 @@ categories: setup
Most git installations will install man files for help, but not the HTML help files (the same files seen on git's "online documentation":http://www.kernel.org/pub/software/scm/git-core/docs/). Installing these help files is a fairly simple process.
-h3. OSX
+h2. OSX
The following commands were run on an installation of the "git-osx-installer":http://code.google.com/p/git-osx-installer/. Your documentation path may be different, pay attention to the output of @git help --web commit@ for where your git is set to look for the HTML files.
@@ -44,6 +44,6 @@ $ git help --web commit
$ git config --global help.format web</pre>
-h3. Windows
+h2. Windows
"Msysgit":http://code.google.com/p/msysgit/ installs and sets the HTML help files as the default automatically. You don't need to do anything!