-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathrails-git.html
150 lines (140 loc) · 7.92 KB
/
rails-git.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>GitHub and Rails</title>
<link href="https://plus.google.com/u/0/b/117374718581973393536/117374718581973393536/posts/" rel="publisher" />
<link rel="stylesheet" href="/css/bootstrap.css" type="text/css" charset="utf-8" />
<link rel="stylesheet" href="/css/screen.css" type="text/css" charset="utf-8" />
<link rel="stylesheet" href="/css/gollum.css" type="text/css" charset="utf-8" />
<link rel="stylesheet" href="/css/site.css" type="text/css" charset="utf-8" />
<link rel="stylesheet" href="/css/syntax.css" type="text/css" charset="utf-8" />
<script src="http://code.jquery.com/jquery-1.6.min.js" type="text/javascript"></script>
<script src="/javascript/jquery.text_selection-1.0.0.min.js" type="text/javascript"></script>
<script src="/javascript/jquery.previewable_comment_form.js" type="text/javascript"></script>
<script src="/javascript/jquery.tabs.js" type="text/javascript"></script>
<script src="/javascript/gollum.js" type="text/javascript"></script>
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-5109366-14']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
</head>
<body>
<div class="navbar navbar-fixed-top">
<div class="navbar-inner">
<div class="container">
<a href="/" class="brand">RailsApps Project</a>
<ul class="pull-right nav">
<li><a href="http://blog.railsapps.org/" class="twitter">Blog</a></li>
<li><a href="http://twitter.com/rails_apps" class="twitter">Twitter</a></li>
<li><a href="https://plus.google.com/117374718581973393536" class="google">Google +</a></li>
<li><a href="https://github.com/RailsApps" class="github">GitHub Repository</a></li>
</ul>
</div>
</div>
</div>
<div class="container">
<div class="page-header">
<h1>GitHub and Rails</h1>
</div>
<div class="content wikistyle gollum textile">
<h1>GitHub and Rails</h1>
<h4>by Daniel Kehoe</h4>
<p><em>Last updated 19 May 2012</em></p>
<p>Using GitHub with Rails. If you’re creating an app for deployment into production, collaborating with others, or simply desire to roll back code changes as needed, <a href="http://git-scm.com/">git</a> allows you to set up a source control repository. If you are building a throw-away app for your own education, you may decide not to set up git, but sooner or later you’ll need to learn to use it to participate in the open source community.</p>
<p>This is a guide for developers using the example apps from the <a href="http://railsapps.github.com/">Rails Apps</a> repository. Others may find it helpful as well.</p>
<p>If you are creating a Rails application template, you can use the <a href="https://github.com/RailsApps/rails_apps_composer/raw/master/recipes/git.rb">git</a> recipe from the <a href="https://github.com/RailsApps/rails_apps_composer">rails_apps_composer</a> repository.</p>
<h2>New to Git?</h2>
<p>If you arew new to git, you can read a free online version of the book <a href="http://git-scm.com/book">Pro Git</a> by Scott Chacon.</p>
<p>Check that git is installed on your computer:</p>
<pre>
$ git version
</pre>
<p>If you need to install git, refer to the section <a href="http://git-scm.com/book/en/Getting-Started-Installing-Git">Installing Git</a> from Scott Chacon’s book. Also see <a href="http://git-scm.com/book/en/Getting-Started-First-Time-Git-Setup">First-Time Git Setup</a> from the book.</p>
<p>Michael Hartl’s Rails Tutorial book also covers <a href="http://ruby.railstutorial.org/ruby-on-rails-tutorial-book?version=3.2#sec:version_control">Version control with Git</a>.</p>
<h2>Ignore Files</h2>
<p>When you use the <code>rails new</code> command, Rails creates a <strong>.gitignore</strong> file for you. You may want to modify it:</p>
<pre>
.bundle
db/*.sqlite3
log/*.log
tmp/
.DS_Store
</pre>
<p>The RailsApps project has a more extensive <a href="https://github.com/RailsApps/rails3-application-templates/blob/master/files/gitignore.txt">example <strong>.gitignore</strong> file</a> you might want to examine.</p>
<h2>Initialize Git For Your Rails Application</h2>
<p>Be sure you are in your application’s root directory.</p>
<p>Initialize git and check in your first commit:</p>
<pre>
$ git init
$ git add .
$ git commit -m 'initial commit'
</pre>
<p>You can check your commit status at any time with:</p>
<pre>
$ git status
</pre>
<h2>Save it to GitHub</h2>
<p>Use a remote source control repository if you want an offsite copy of your work or you plan to share your work with others.</p>
<p>Get a <a href="https://github.com/signup/free">free GitHub account</a> if you don’t already have one.</p>
<p>Check that your GitHub account is set up properly:</p>
<pre>
$ ssh git@github.com
</pre>
<p>Go to GitHub and create a new empty repository (<a href="http://github.com/repositories/new">http://github.com/repositories/new</a>) into which you can push your local git repo.</p>
<p>Add GitHub as a remote repository for your project and push your local project to the remote repository:</p>
<pre>
$ git remote add origin git@github.com:YOUR_GITHUB_ACCOUNT/YOUR_PROJECT_NAME.git
$ git push origin master
</pre>
<p>At each stage of completion, you should check your code into your local repository:</p>
<pre>
$ git commit -m "some helpful comment"
</pre>
<p>and then push it to the remote repository:</p>
<pre>
$ git push origin master
</pre>
</div><!-- class="content" -->
<div class="comments">
<div class="content wikistyle gollum">
<h2>Comments</h2>
</div>
<p>Is this helpful? Please "like" below. Question or suggestion? Please add a comment below. Got a correction or addition? You can edit this page <a href="https://github.com/RailsApps/railsapps.github.com/wiki/_pages">on the wiki</a> or create a <a href="https://github.com/RailsApps/railsapps.github.com/issues">GitHub issue</a> to alert me.</p>
<div id="disqus_thread"></div>
<script type="text/javascript">
/* * * CONFIGURATION VARIABLES: EDIT BEFORE PASTING INTO YOUR WEBPAGE * * */
var disqus_shortname = 'railsapps'; // required: replace example with your forum shortname
/* * * DON'T EDIT BELOW THIS LINE * * */
(function() {
var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
dsq.src = 'http://' + disqus_shortname + '.disqus.com/embed.js';
(document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
})();
</script>
<noscript>Please enable JavaScript to view the <a href="http://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
<a href="http://disqus.com" class="dsq-brlink">comments powered by <span class="logo-disqus">Disqus</span></a>
</div><!-- class="comments" -->
<div class="footer row">
<div class="span4">
<h3>Credits</h3>
<p><a href="http://danielkehoe.com/">Daniel Kehoe</a> initiated the <a href="http://railsapps.github.com/">RailsApps Project</a>. Thanks to <a href="http://tigrish.com/">Christopher Dell</a> for design contributions.</p>
</div>
<div class="span4">
<h3>Contributions</h3>
<p>Corrections? Additions? You can edit this page <a href="https://github.com/RailsApps/railsapps.github.com/wiki/_pages">on the wiki</a>.</p>
</div>
<div class="span4">
<h3>Last edit</h3>
<p>by <b>Daniel Kehoe</b>, 2012-05-19 20:21:06</p>
</div>
</div>
</div>
</body>
</html>