• Git基础使用教程


    Git是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理,是目前使用范围最广的版本管理工具。

    之前的博客中介绍了linux下安装Git的内容,这篇博客,简单介绍下使用Git进行本地文件管理和连接上传远程仓库的方法。。。

    一、Windows上安装Git

    一般我们工作的电脑都是Windows系统,要使用git首先要进行安装。从软件管家或者其他平台找到git的安装包,下载后默认安装即可。

    安装成功之后,可以在开始菜单里面找到git:

    或者在桌面右键,也可以看到:

    其中GUI为用户界面模式,Bash为命令行模式,这里就以Bash为例子介绍git的基本使用方法(其实相比于GUI,个人觉得Bash更容易学习理解)。

    二、设置

    由于git是分布式管理工具,需要输入用户名和邮箱以作为标识,因此,在命令行输入下列的命令:

    PS:注意git config  --global参数,有了这个参数,表示你这台机器上所有的Git仓库都会使用这个配置,当然你也可以对某个仓库指定的不同的用户名和邮箱,根据个人情况设置。

    三、工作原理

    安装好之后,在使用前先来了解一下Git的工作原理,是很有必要的一件事,下面是Git的工作流程和简化原理图:

    1、Git工作流程

    2、Git简化原理图

    四、基本用法

    1、创建版本库

    版本库就是我们所说的“仓库”,英文名repository,你可以理解为一个目录,这个目录里面的所有文件都可以被Git管理,文件的修改,删除Git都能跟踪,

    以便任何时刻都可以追踪历史,或者在将来某个时刻还可以将文件”还原”。

    下面是在我的电脑→D盘→TEST文件下,创建一个名为lianxi的版本库:

    命令解析:

    cd:进入某个目录

    mkdir:创建一个文件

    pwd:显示当前的目录路径

    2、添加文件到版本库

    要添加文件到版本库,首先需要将这个目录变为git可以管理的仓库,命令如下:

    然后,在lianxi目录下创建一个文件,这里我创建的文件为0409.txt,内容为123456

    使用下列的命令,将创建的文件添加到暂存区,然后提交到仓库:

    命令解析:

    git add:将文件提交到暂存区

    git commit -m:将暂存区文件提交到仓库(单引号内为注释)

    3、检查是否有未提交的文件

    通过下面的命令,检查该版本库是否有文件未提交:

    命令解析:

    git status:检查当前文件状态

    4、检查文件是否被修改

    修改0409.txt的文件,然后重新检查状态:

    修改文件后,通过命令git status发现,文件已经被修改,但是未提交,如果要检查文件修改了什么内容,可以通过上图中的命令来查看,发现文件的第二行增加了666666的内容。

    检查无误后,继续提交修改后的文件,提交命令和上面一样。

    命令解析:

    git diff:查看文件修改的内容

    5、查看历史变更记录

    再次修改文件内容,第三行增加233333的内容,然后保存提交:

    现在已经修改了2次文件,可以通过如下命令查看历史修改记录:

    如上图所示:每次提交都会有自己的版本号,当然,入过觉得这样看起来比较费事,可以使用命令,获得精简版本的日志记录。

    命令解析:

    git log:获得历史修改记录

    git log --pretty=oneline:使记录只显示主要的内容,一行显示

    6、版本回退

    首先通过命令行查看当前的文件内容:

    然后通过下列的命令,执行版本回退:

    可以看到内容已经回退到上一个版本,通过git log查看修改记录,发现最近的一次233333内容的记录已经看不到了,如果想回到最新的版本,可以通过如下命令进行回退:

    从上图可以看到,文件版本又回退到了最新的状态。

    命令解析:

    cat:查看文件内容

    git reset --hard HEAD^:回退到上一个版本

    git reflog:获取历史版本号

    git reset --hard 版本号:回退到该版本号对应的版本

    PS:如果要回退到上上个版本,可以使用git reset --hard HEAD^^命令,但是这样稍显麻烦,如果回退到100个版本之前,只需要执行这个命令即可:git reset --hard HEAD~100;

    五、将本地文件推送到github仓库

    PS:关于Git和github关联,可以参考这篇博客:Git关联github,这里跳过不细说。

    检查文件是否还有未提交或者修改的,然后将文件提交到github仓库,命令如下:

    命令解析:

    git remote add origin https://github.com/zwg481026/APITest.git是将你本地的仓库和github仓库进行关联,在操作时候,需要将github地址替换为自己的,否则无法推送!

    然后执行下面的命令:

    第一次推送master分支时,加上了 –u参数,Git会将本地的master分支内容推送的远程新的master分支,还会把2个master分支关联起来,在以后的推送或者拉取时就可以简化操作。

    推送成功后,可以立刻在github页面中看到远程库的内容已经和本地一模一样了,登录你的github,从仓库中查看:

    之后,只要本地做了修改提交,就可以使用git push origin master命令进行文件推送。

    六、其他

    服务器使用的centos部署的Java项目,使用git pull拉下代码的class文件的时候,经常会提示需要输入帐号和密码。然后在码云官方群里询问了下解决方案。


    在终端输入以下指令。
    git config --global credential.helper store

    然后再次执行pull操作,还是会提示一次输入帐号与密码。
    断开终端链接,重连,再次进行pull操作,直接就拉取代码了,不用再输入帐号密码了



  • 相关阅读:
    mysql中in 做条件匹配 带逗号的字符串 数据异常解决
    [LeetCode] Kth Largest Element in a Stream 数据流中的第K大的元素
    [LeetCode] Binary Search 二分搜索法
    [LeetCode] Search in a Sorted Array of Unknown Size 在未知大小的有序数组中搜索
    [LeetCode] Insert into a Binary Search Tree 二叉搜索树中插入结点
    [LeetCode] Search in a Binary Search Tree 二叉搜索树中搜索
    [LeetCode] Design Circular Deque 设计环形双向队列
    [LeetCode] Design Circular Queue 设计环形队列
    [LeetCode] N-ary Tree Preorder Traversal N叉树的前序遍历
    [LeetCode] 589. N-ary Tree Postorder Traversal N叉树的后序遍历
  • 原文地址:https://www.cnblogs.com/jasonLiu2018/p/11733850.html
Copyright © 2020-2023  润新知