【3月2日】启航!GitHub入门教程:上传文件到GitHub

来源:互联网 发布:数控折弯机有编程吗 编辑:程序博客网 时间:2024/06/06 05:47

GitHub不多作介绍,上面有非常多优秀的项目以及神级开发人员。刚刚看了下时间线,申请账号已经八个月了。只是偶尔clone几个项目,刚开始的时候创建了一个HelloWorld,然后就再也没有动过了!为啥?不懂。不会。不学。不求上进!

对着教程,终于成功commit一个基于SSH框架整合的项目。过程并不顺利,总是蹦出来形形色色的问题。好在网络有够发达,坑基本上被前人踩完了,花点时间和耐心,问题总能解决。写blog的目的一是做个学习笔记,二也是分享经验,感兴趣的小伙伴可以star或者fork一下这个项目https://github.com/MoonTreee/HelloWorld,一起做一个系统出来。接下来介绍一下windows下安装和使用步骤。

一、        New repository(创建项目)

首先,也是最重要的一点,你需要一个giuhub的账号https://github.com。注册流程并不复杂,而且可以学习很多优秀的项目,绝对超值!

有了账号登陆之后就可以创建自己的repository了。创建的具体过程可以看我的截图,也可以看官方的帮助文档,都很简单https://help.github.com/articles/create-a-repo 。

 

接下里看一下Git的工作流程(来源:菜鸟教程):


1.     克隆 Git 资源作为工作目录。

2.     在克隆的资源上添加或修改文件。

3.     如果其他人修改了,你可以更新资源。

4.     在提交前查看修改。

5.     提交修改。

6.     在修改完成后,如果发现错误,可以撤回提交并再次修改并提交。

Git的工作区域分为工作区、缓存区和版本库,具体介绍http://www.runoob.com/git/git-workspace-index-repo.html。

1.     工作区:就是你在电脑里能看到的目录。

2.     暂存区:英文叫stage, 或index。一般存放在 ".git目录下" 下的index文件(.git/index)中,所以我们把暂存区有时也叫作索引(index)。

3.     版本库:工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库。

 

二、        Clone(下载项目到本地)

为了在本地编辑资源,需要安装客户端(亲测使用第三方工具整合也能很方便的clone到项目资源,如IDEA整合的就很好,但是这里还是介绍一般性的工具)。下载地址http://windows.github.com/ 。设置好安装路径之后可以一路默认,成功之后桌面上就会有一个Git Bash的标志啦。恭喜!你已经迈出了重要的一步!

在实际操作过程中,会发现莫名其妙的C:\User下会多出很多奇奇怪怪的文件,对于很多轻微强迫症的人来说(比如我。。。。)来说总感觉有点膈应。在网上搜索了一下终于找到原因:Git默认的clone资源到本地的路径就是C下的用户文件夹。解决的方法也很简单,在桌面上右键Git Bash,然后选择“属性”,删除“目标”栏的—cd—to—home,然后在”起始位置”上面添加自定义路径(我的默认路径已经改为I:\GitTree)。


Okay,现在进入Git Bash,就可以看到酷酷的命令行界面了(毕竟git的出生问题,对windows用户一向不友好,不过好在现在图形化交互工具也有了)。启动之后,早命令行输入:

$ gitconfig --global user.name "Your Name"$ gitconfig --global user.email email@example.com


Git是分布式版本控制系统,同一个Git仓库,可以分布到不同的机器上。怎么分布呢?最早,肯定只有一台机器有一个原始版本库,此后,别的机器可以“克隆”这个原始版本库,而且每台机器的版本库其实都是一样的,并没有主次之分。如果你有进一步的需求,想玩远程,那就要求你拥有很多的主机(同一个电脑也可以在不同的目录下clone很多版本,但是现实生活中这样做没什么意义。一不安全,二也不利于合作)。那怎么玩呢?!这里就要说到GitHub这个神奇的网站了,专门提供Git仓库托管服务。只要注册一个GitHub账号,就可以免费获得Git远程仓库啦!

由于本地Git仓库和GitHub仓库之间的传输是通过ssh加密的,so,首先需要创建ssh key。打开GitBash,输入:

$ssh-keygen -t rsa -C youremail@example.com


同样是一路回车,直接使用默认设置。一切顺利的话,在用户目录C:\Users\用户名 下会多一个.ssh目录,里面有id_rsa(私钥)和id_rsa.pub(公钥)两个文件。

然后,打开网页,登陆GitHub,打开“Account setting“,”SSH Keys“页面,点击”Add SSH Keys“,Title随便些,在Keys文本框里粘贴上id_rsa.pub(公钥)文件里面的内容。

好的,到了这里,准备工作也做的差不多了。

在初始化版本库之前,先确认公钥是否正确:

$ ssh -T git@github.com


成功之后界面如下(to强迫症患者,那个Warning不用管!):

然后找到目标库的地址:

将远程库clone到本地:

 

$ git clone https://github.com/MoonTreee/HelloWorld.git

 

三、        Commit(提交文件)

等待以上步骤结束,你会发现你的目录下多了一个HelloWorld的文件夹,在Git Bash上使用cd命令进入文件夹目录,对

$git clone https://github.com/MoonTreee/HelloWorld.git

仓库进行初始化:

$ git init


git add命令可以将文件添加到缓存,在过程中可以随时使用git status来查看项目当前的状态。本次实验主要目的是将已经初步整合完毕的项目文件SSHPlay上传,故直接使用:

$ git add SSHPlay


成功之后可以使用git status查看状态。

$ git commit –m “SSH”


-m后面是添加的注释内容,每次提交之后填写注释,好让他人知道你做了哪些修改。

四、        Push(上传文件)

$ git remote add origin https://github.com/MoonTreee/HelloWorld.git$ git push origin master


运气够好的话,输入以上命令就可以成功啦。当然可能会出现版本冲突等问题,不要着急,把报错信息百度一下基本都可以解决的。

Good Luck.Have Fun。

0 0
原创粉丝点击