• Git与GitHub使用详解


    0.Git与GitHub的区别

    git与github是当代软件开发中最常用的软件版本管理工具之一。他们之间名字相似,在功能上也有相似之处,但是在实际应用中,他们要起到的作用是不同的。

    (1)git是一个需要下载安装的软件,它运行在每一位软件开发人员自己的电脑上。

    (2)github是一个网站,该网站已被微软收购。

    (3)git是一个本地软件版本管理工具,它的仓储是建立在本地电脑上的,所以它只能做单人开发时的版本管理

    (4)如果团队开发,并且要做软件版本管理,只有git就力不从心了,因为我们需要团队共享同1个仓储,所以就需要一个共享的仓储服务器。github就是起到了这样一个共享的、唯一的、能实现版本控制的、具有服务器性质的远程仓储。

    总之一句话,git必须与github搭配使用。当然也有github的替代平台,比如码云:https://gitee.com/,码云提供了与github完全相同的功能以外,还有自己的特色功能,重点它是国内的服务器,我们用起来速度快。再多说一句,特朗普拉黑华为的时候,github也暂停了对华为的服务。

    1、下载安装Git

    这个其实没什么好说的,百度git官网,下载与你电脑操作系统匹配的版本,下载之。然后一路next傻瓜安装就完事了。

    唯一需要说明的是在这一步,一定要选择:Use Git from Git Bash only。如下图。由于版本不同,可能选项不太一样,但大致都是如此,选择bash就ok了。

    安装完后,只要在你电脑的任何一个目录下拉右键,看到有如下图的2个菜单选项就可以了。

    2、初始化项目

    在项目目录下拉右键,选择“Git bash here”选项,进入到Git命令行工具窗口。然后输入命令

    git init

    此命令将当前目录变成一个Git可以管理的仓储。执行完命令后,你在当前目录下就能看到多了一个名字叫做“.git”的文件夹。注意,这个文件夹默认是隐藏的,你需要打开隐藏文件才能看到。

    如下图所示:

    3、配置当前git用户信息

    git config --global user.name "LaoLi"    //配置用户名(全局配置)
    git config --global user.email "laoli123@163.com" //配置电子邮箱(全局配置)

    初次使用git,这两项是必须配置的。

    4、查看配置信息

    如果日后想查看git的配置信息,可以使用以下命令

    git config –-local -l  //查看仓库级的 config,命令:
    git config –-global -l  //查看全局级的 config,命令:
    git config –-system -l  //查看系统级的 config,命令:
    git config -l  //查看当前生效的配置,  命令:

    5、把代码提交到仓储的工作区

    git add 文件名   //把单个文件提交到git工作区

    工作区并不是真正存放代码的仓库,我们可以把工作区看做是代码的暂存区。上面的命令是把1个文件提交到工作区,如果要提交的项目很多,那么一个一个的提交会非常麻烦,那么可以使用下面的代码,一次性把当前项目的所有修改的文件,统一提交到工作区。

    git add ./

    注意,add命令后面,不管是文件名还是 ./,都不需要用引号包住。

    6、查看git管理的项目文件状态。

    git status

    7、把代码提交到仓储的版本库

    仓储区才是项目文件真正的家

    git commit -m "这是本次提交到仓储的代码说明"  

    这个命令有2个特点:

    1.git会一次性的把工作区中所有的文件,全部提交到仓储中。

    2.必须有-m的说明,-m是指令参数,它的值是为了之后项目管理中,便于查询此次提交的内容是什么。

    有的时候,我们觉得每次代码修改后,都需要先提交到工作区,然后才能commit到仓储中,太麻烦了。我想直接提交到仓储中。那么你可以使用以下命令

    git commit --all -m "这一次是把修改的代码文件直接提交到仓储的版本库"

    "--all"是参数,注意,是2个“-”,并且-m说明也不能少

    8、查看仓储提交日志

    git log  

    这个命令可以查看仓储的版本库中所有的版本提交历史的日志。它将以详细的的方式来显示,如下图所示。其中红色框住的是版本id号。

    当日志很多的时候,这种方式并不适合我们查看,所以我们需要一种精简的日志查看方式。命令如下

    git log --oneline

    运行效果如下图所示:

    我们看到的结果,不仅信息量精简了,连版本id都只取了版本号的前7位,但是这其实已经保证绝对不会重复了。所以后边版本回退的时候,使用的版本号就是这个精简版的版本号。

    9、版本回退

    git reset --hard Head~0  // 回退到0号日志的版本

    这里的Head~0, 0其实就是一个日志的索引,你可以使用1,2,3.。。。任意正整数,来代表你要回退到的版本号。0是离当前版本最近的上一个版本。

    当git管理的项目版本非常多的时候,这么使用索引来回退是非常不方便的,我们可能更希望使用版本的id号来回退。那么可以使用如下命令:

    git reset --hard 版本号

    这里说明下什么是版本号,这个号是你在commit的时候,由git自动给你你此次提交的版本生成的唯一编号,完整的版本号非常长,这里reset命令使用的版本号是精简的id号,它就是我们使用git log --oneline时,看到的版本号。

    这里有个问题,就是如果我记不住项目的版本号,或者由于种种原因已经看不到某1个版本号,那么可以使用下面的命令,来查看所有的版本号。

    git reflog

    这个命令实际看到的是所有对版本切换的操作记录。这里就有版本号。

    10、创建子分支

    首先我们要知道什么是分支。我们启动运行git的时候,默认的是主分支,也就是master分支。

    创建子分支的命令如下:

    git branch 分支名

    这里分支名可以是任意字符串。比如:git branch dev。

    我们可以通过下面的命令来查看当前所有的分支

    git  branch

    11、切换分支

    当我们的本地仓储有多个分支之时,可以在不同的分支之间切换。命令如下:

    git checkout 分支名

    12、合并分支

    项目开发到一定程序,需要把其他分支的代码合并到主分支。

    合并分支时,首先要回到master分支。

    git checkout master

    然后才能把其他子分支合并过来,比如我们合并dev分支提交的代码。 

    git merge dev

    13、删除分支

    删除分支时要注意:

    1.master分支,也就是主分支是不能删除的。

    2.必须先回到master分支,才能删除其他子分支。

    删除子分支命令如下:

    git branck -d  分支名

     14、GitHub注册

    打开GitHub官网:https://github.com/,默认就是注册的UI界面。如果不是,你也可以点击左上角的 "sign up" 注册。

    15、登录GitHub

    注册完成后是默认为登录状态的。如果没有,你也可以点击第14步,所示图片的右上角“sign in”来进行登录。登录UI界面如下:

     

    登录完成后进入账号主界面,如下:

      16、创建GitHub仓储。

    我们把GitHub上创建的仓储叫远程仓储。创建仓储的操作非常简单。操作如图所示:

    然后你会看到如下界面

    填写完了,点击“Create repository”就创建了仓储。你会看到类似下面的界面

    这里最关键的就是记下这个仓储的URL,这个URL将作为我们日后通过Git把本地代码上传到GitHub时的URL。

    当然这个地址你不需要去记,你可以随时登录自己的GitHub账号,然后通过上面的操作来查看。

    到这里,我们GitHub上的操作就暂时告一段落了。接下来,就是如何通过Git把代码上传到GitHub的指定仓储,或者把指定仓储中的代码下拉到本地。

     17、通过Git把本地代码上传到GitHub指定仓储

    首先,你需要通过第16步中的操作,记下GitHub对应仓储的URL。

    然后,打开Git本地项目的bash窗口,在窗口中输入如下命令:

    git push  github远程仓储的URL  master

    这个命令的关键词是push,它是上传代码的命令。该命令的最后master,是分支的名字,这里是主分支名字,表示我们把本地的代码上传到GitHub的仓储的master分支。这里的潜台词就是,GitHub也是有分支这1概念的,而且也跟本地Git的分支相照应。

    当你第一次上传代码的时候,git会弹出1个类似于登录的对话框,让我们输入远程仓储对应的账号和密码。这很好理解,总不能随便是个人就能上传代码吧。

    恕我不能截图,因为只要登录一次,本地git就会记录下来这个账号密码,之后再push的时候就不用反复输入了。

    18、配置push命令的地址

    如果每次push的时候,都要写仓储的URL,将是一件非常麻烦的事情。我们可以通过配置,在本地记录下来这个地址,然后给它起个别名,之后再用到这个地址的时候,我们只需要使用别名就可以了。配置的命令是:

    git remote add  [别名]  仓储URL

    例如下图,我就给远程仓储的URL起了个别名AsLifeProj

    实际上,这个命令最终是往.git目录下的config文件里写下了如下一些信息。

    这个文件是纯文本文件,用记事本打开就可以看到源码。

    这个配置了以后,我们再次push代码,就可以使用这个别名了,例如:

    git push AsLifeProj master

      需要注意的是,在第一次push的时候,系统会让我们输入用户名和密码,如下图所示:

     

      这里输入你的github账号和密码就可以了。以后push就都不用输入了 

    19、把GitHub仓储中的项目代码下拉到本地

    下拉也就是下载的意思,或者叫同步也行。这个操作使用的命令是pull,它的用法非常类似于push命令,格式如下:

    git pull [远程仓储URL]  [分支名]

    如果你有上一步的配置别名,pull命令的远程仓储URL也可以使用别名。

  • 相关阅读:
    android滤镜效果
    Android ListView的OnItemClickListener详解
    Categories
    利用Stack倒序List,利用Set使List不能添加重复元素
    IOS数据类型对应输出格式
    win7的dropbox无法启动 重新安装也没用
    记一次datatable的删除操作
    winform动态创建radio以及使用委托判断哪个选中
    临时表列的长度
    退出winform应用程序
  • 原文地址:https://www.cnblogs.com/ldq678/p/11173710.html
Copyright © 2020-2023  润新知