`

Git入门教程

 
阅读更多

如果你还在用cvs、或者svn或者还有什么其他balabala的版本控制工具,那么你就out了。如果你还不知道Github,那么现在你的机会来了。

在2005年,Linus Torvalds(Linux之父)为了解决在处理Linux内核上的补丁程序遇到的问题而开发了Git版本控制系统。几年之后,出现了以Git为基础的具有漂亮的web使用界面的GitHub,这使得对这个平台上的项目进行分支操作,打补丁,和提交代码等都变得异常简单容易。它采用的标准化的wiki和问题跟踪系统,这意味着所有的项目是按同一种方式搭建起来的。一旦你学会了如何向GitHub上的一个项目提交代码,你也就知道了如何向其它所有项目提交代码了。

其实最重要的是你知道或者能使用那就更好了,同时能增加你在与客户沟通谈资中的亮点哦。下面,我们将简单地介绍和使用Github来实现基本的版本控制。当然你也可以直接看官方更详细的文档,如果你愿意借鉴本文档中的一些东西,也保留的你权利。      

优点:

1.      方便的合并和派生机制,可以在任意版本上派生和合并

2.      社交化的版本库,只不过这是一个私有的,公共视图不可见的库。

3.      基于互联网的存储和分布,相当于在互联网上的分布式版本库。

 

前提:

       为了之后的操作方便,你如果愿意可以去github.com 注册一个账户,for free。

一、安装和配置

(1).下载安装可参见:http://help.github.com/win-set-up-git/,以下仅以windows为例

安装完成,在windows中启动Github,可见如下界面,

到这里你已经完成了一大步了,下面我们继续。

 

(2)生成SSH key

在如上图中的bash界面输入:


当然黄色部分,你可以换成你的Email地址和相应的目录,在提示的时候输入你希望的到时用ssh连接版本库的公钥密码。

公钥生成完成后,将会看到类似上图的界面。并在你设定的相应的目录下产生一个 .ssh文件,里面的id_rsa.pub文件将是我们接下来所需要的(前提是你必须设置隐藏文件可见,在windows中的话)。

 

(3)将你的ssh key与Github账号绑定

在Dashboard首页右上方,操作1

在AccountSetting界面依次点左侧,“SSHPublic Keys” 然后“Add Another public key”,将上面创建ssh key后,所在目录下的.ssh目录中id_rsa.pub文件内容拷贝并复制到下图所示框中(Title不是必填项

再点add key,OK,完成这一步。

 

(4)测试

       在Github的bash界面输入如下

      

       在如下界面输入“yes“

       正常情况下会出现如下界面,至此安装部分基本结束。

 

(5)配置用户名和邮件信息

       其中黄色部分你可以换成你的个人名字和email

 

(6)配置Github token

在Dashboard首页右上方,然后点account settings,在图中位置中你的信息token复制

 

你可以在Github的bash界面用ctrl+insert键粘贴剪切板中的内容。

最后,在bash中如入如上命令,即可完成配置。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

二、创建版本库

(1)在dashboard首页,右下角点“new repository”

(2)填写项目信息,然后点“create Reporsitory”,

 

(3)这一步,我们将提交一份文件至版本库,代码可以相同的方式提交

       Github的bash其实有点像linux的bash,你可以打开vi,也可以执行linux命令,当然不是所有的命令都有,至少常见的命令是有的。

       我们依次要执行的命令有

       创建目录、进入目录、git初始化、创建文件(上传版本库的上传文件)

      

(4)将你的本地的Github仓库与Github账户连接,(当然你必须进入相应的带.git的文件目录下,不然会提示你不能找到.git文件。.git文件存在于你执行git init后初始化的目录中)

文件提交

用过svn的同学大概能想起点什么来了。

你将能看到类似如下的界面,

至此,你已经学会文件提交了。

·连接远程版本库:

下次使用,打开bash后,输入

$ ssh –v git@github.com 就能连接远程版本库了.

 

·提交已存在文件:

如果对已存在文件提交,可以直接使用

$ git commitfilename –m ‘message其中黄色部分可按照实际情况填写。此提交将文件提交至本地存储版本库中。若要提交至远程账户,可执行以下命令

$ git push origin master至此,文件已与Github账户所在的版本库同步。

 

·本地与服务器版本同步(可参照下图中的命令):

这个同步功能有些不太好使,如果在linux上,你用ssh后,可能效果会更好

三、派生新版本

       你可以选择先从版本库中取一份拷贝到你的本地,相当于checkout一份,如SVN中:

              $ git clone git@github.com:username/Spoon-Knife.git

如黄色部分可替换为你的信息

然后配置远程属性,

这里有几个概念,通过clone下来的版本有一个默认的远程名叫“origin”。此origin与你Github账户拥有的版本库的主版本不同。如果需要追踪主版本,可以使用另外一个远程名“upstream”。

 

更多功能:

1.      你还可以将主版本中的文件更新至你的分支版本库中或者合并(对于你的分支版本操作)

2.      你还可以向主版本发起合并请求,等待相关人员将你的代码加入主版本

3.      删除分支版本、脱离主版本等

 

还有社交化的功能等着你去摸索。比如你可以查看你关注的人正在进行的项目,你可以加入别人正在开发的项目,建立分支。然后写代码,再然后,提交代码。如果你正在考虑使用什么版本控制工具,在这里强烈推荐Github。

 

分享到:
评论

相关推荐

    Git入门教程1

    【Git入门教程1】 Git是一种分布式版本控制系统,相较于CVS和SVN,它拥有许多显著的优势,这使得酷讯公司选择了Git作为其软件版本管理工具。Git的主要特点包括: 1. **简易初始化**:使用`git init`和`git commit ...

    git入门教程.docx

    Git 入门教程 Git 是目前世界上最先进的分布式版本控制系统,由 Linus 在 2005 年创建。 Git 的诞生离不开 Linux 的发展,Linux 系统不断发展,已经成为最大的服务器系统软件了。 Linux 的代码是如何管理的呢?在 ...

    Git入门教程.docx

    总结来说,这个Git入门教程涵盖了基础的Git操作,包括分支管理、提交更改、查看状态、合并分支和与远程仓库交互。通过实践这些命令,你可以更好地掌握Git,并享受到它带来的代码管理和协同工作的便利。记得经常使用`...

    git入门教程

    本篇文章将为初学者提供一个简明的Git入门教程,涵盖了Git与SVN的区别、Git分支与流程、以及一些基础命令的使用。 ### Git与SVN的区别 首先,我们需要了解Git与另一款常用的集中式版本控制系统SVN的主要差异。SVN...

    GIT基础教程,适合菜鸟入门

    适合初学者入门的Git基础教程

    Git基础教程.docx

    Git 基础教程 Git 是一个分布式版本控制系统, Allow 多个开发者在同一个项目上进行协作。下面是 Git 基础教程的知识点总结: 一、Git 下载安装 Git 下载安装可以通过网上搜索找到下载安装包,例如 Windows ...

    Git 入门教程安装配置.md

    Git 入门教程(任务)

    新人git 基础教程 大全

    Git基础教程大全 版本控制是软件开发过程中的一种管理技术,用于追踪和记录文件、目录或项目的修改历史,方便查看更改历史记录,备份以便恢复以前的版本。版本控制的主要目的是为了在多人协同开发项目时,能够追踪...

    附件4-git入门教程1

    根据提供的文件信息,标题与描述均为“附件4-git入门教程1”,这表明文档的主要内容将围绕Git的基础使用展开。Git是一种分布式版本控制系统,被广泛应用于软件开发过程中进行代码管理、版本控制以及协作开发等场景。...

    Git 基础教程.pdf

    Git 基础教程.pdf

    超级简单的Git入门教程.docx

    ### 超级简单的Git入门教程 #### 一、Git 是什么? Git 是一款非常流行的分布式版本控制系统。它被广泛应用于软件开发项目中,用于跟踪文件的变更历史,并且能够支持多个开发人员协同工作。 **Git 的工作原理/...

    Linux系统中git 入门教程.docx

    Linux系统中git入门教程 Git起源:Git诞生于一个极富纷争大举创新的年代,Linux内核开源项目有着为数众广的参与者。绝大多数的Linux内核维护工作都花在了提交补丁和保存归档的繁琐事务上(1991-2021年间)。到2021...

    Git入门教程[汇编].pdf

    Git入门教程[汇编].pdf

    基于Java的情绪化Git入门教程设计源码

    本项目是一款以Java为基础的情绪化Git入门教程设计源码,总共有81个文件,其中包含67个XML配置文件、4个Java源文件、3个Markdown文件、2个Git忽略文件、2个属性文件、1个Idea项目文件和1个Maven构建文件。...

Global site tag (gtag.js) - Google Analytics