创建GitHub账号,邮箱激活,安装GitBash(Windows系统)。
如果还没提交过代码,需要设置Git user,向GitHub输入SSH Key;如果已经向GitHub提交过代码的,可跳过这两个步骤,直接进入创建GitHub仓库一节。
在Bash shell中(Windows则用GitBash),设置你的git用户:
$ git config --global user.name "WenzheLiu" $ git config --global user.email liuwenzhe2008@qq.comGit命令太多,记不了那么多怎么办?不用担心,Eclipse 4.x自带了Git插件,即EGit(老版本的Eclipse没有的话也可以安装下),它提供GUI帮助我们简化Git操作,并提供很好的视图。
同样的,使用EGit也需要设置user,在Window->Preferences中设置一下:
想要往GitHub提交代码(或其他文件),需要建立SSH通道,让GitHub认识你,信任你。
在Bash shell中,输入
$ ssh-keygen -C liuwenzhe2008@qq.com -t rsa读者可以将我的邮箱换成你在GitHub注册时绑定的邮箱即可。
运行上面的命令,会在${user home}/.ssh/目录下生成两个文件:id_rsa和id_rsa.pub。命令的输出的信息可以证实这一点:
Generating public/private rsa key pair. Enter file in which to save the key (/c/Users/Administrator/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /c/Users/Administrator/.ssh/id_rsa. Your public key has been saved in /c/Users/Administrator/.ssh/id_rsa.pub. The key fingerprint is: ... (省略)打开id_rsa.pub文件,将其内容全部复制到剪贴板中。
然后,在GitHub网上,进入Settings,在SSH页面下:
点击New SSH Key按钮,title 可以随便写,key就粘贴id_rsa.pub文件的内容:
在命令行中,可以输入如下命令测试一下是否成功:
$ ssh -v git@github.com仓库(Repository)是我们代码要提交的地方,需要在GitHub上创建。
Git关联代码,用命令行的方式,是在代码根路径下,输入:
$ git init命令执行后,会在当前目录下生成一个.git的子文件夹,它是Git的本地仓库,所有git信息都会存在里面。可以用ls -a来验证:
$ ls -a ./ ../ .classpath .git/ (省略其他) $ ls -a .git ./ ../ branches/ COMMIT_EDITMSG config HEAD hooks/ index logs/ objects/ refs/当然,有EGit的帮助,我们可以懒得去记忆这些命令,下面的操作达到一样的效果,而且还能被Eclipse支持:
有些文件(夹)我们不想提交,可以创建文件.gitignore来记录。当然,有了EGit,你也可以不用知道这一点。比如,我们不想要提交target目录,因为它是编译生成出来的。在Eclipse中,右击target目录,如下操作:
这时会生成.gitignore文件,内容如下:
$ cat .gitignore /target/一般Eclipse下的Java工程还会有一个.settings目录是我们不需要提交的,可以编辑.gitignore文件加入信息,改完之后如下:
$ cat .gitignore /target/ /.settings/关联上Git之后,git本地仓库还没有记录代码的信息,因为还没有提交到本地仓库。这时,工程标示为NO_HEAD,而每个尚未提交的文件都有个问号(?)的标示,如下图。
我们需要把代码提交到本地仓库(即.git目录),命令行的方法是commit命令:
$ git commit -m "update doc and read me"其实,有了EGit的帮助,我们也无需去记忆这些命令。如下图:
点击Commit按钮,将提交到本地仓库。提交之后,NO_HEAD和问号都没有了,表示已经提交成功。如下图:
提交到本地仓库后,可以提交到GitHub远程仓库。
当我们在GitHub页面创建完仓库后,GitHub会在页面上显示一些命令帮助信息,比如创建LICENSE文件等:
我们可以看到提交到GitHub远程仓库的命令行方式:
$ git remote add origin git@github.com:WenzheLiu/WorkRecorder.git $ git push -u origin master命令太复杂了,还是记不住。这种机械记忆本应该就是计算机给我们做好的,人无需去记忆,人应该把精力放在更需要创造性的地方,不是吗?
不怕,EGit就是这样一个好助手!如下操作可以提交到GitHub远程仓库:
然后就是等待上传完成:
上传完成了:
另外,我们也可以在做本地提交的时候同时提交到GitHub远程仓库。还记得前面本地提交的界面吗?除了Commit按钮外,还有一个按钮Commit and Push,它是两个步骤合在一起做了,简单方便。
检查一下我们的成果,在GitHub网站能看到提交的文件了,哈哈!
随便提一下,本文的图片示例直播了我对自己开发的WorkRecorder工具的开源过程,而这些图片都是由该工具自己所录制与抓取的,感谢WorkRecorder!
——- 本博客所有内容均为原创,转载请注明作者和出处 ——–
作者:刘文哲
联系方式:liuwenzhe2008@qq.com
博客:http://blog.csdn.net/liuwenzhe2008