GIT基础应用

一、主要具备的功能

  1. 协同修改:多人并行不悖的修改服务器上的同一文件
  2. 数据备份:不仅能保存目录文件的当前状态,还能保存每一个提交过的历史状态
  3. 版本管理:保存每个版本文件信息时,采用文件系统快照的方式
  4. 权限控制:对团队中参与开发的人员进行权限控制,对外开发者的代码进行审核
  5. 历史记录:查看修改人、修改时间、修改内容、日志信息,将本地文件恢复到某一个历史状态
  6. 分支管理:在开发过程中可以多条生产线同时进行
    Git结构
    在这里插入图片描述

二、使用

1.创建版本库
版本库(repository)也叫仓库,可以看做一个目录,这个目录里的所以文件都由Git进行管理,每个文件的修改、删除,Git都能跟踪。

$mkdir genlujing  //创建空目录
$cd genmulu   //设置genlujing为当前目录 
$ pwd   //查看看当前目录
/d/gityingyong/genlujing

注:要保证目录名不包含英文

2.通过git init将本地库初始化
.git 的目录,这个目录是Git来跟踪管理版本库的

$git init
注:.git 目录中存放的是本地库相关的子目录和文件,不要删除,也不要胡乱修改。

3.设置签名

  1. 项目级别/仓库级别:仅在本地库范围有效
//创建姓名
$ git config user.name xh

//创建邮箱
$ git config user.email abbclass@163.com

//查看信息保存
$ cat .git/config
[core]
        repositoryformatversion = 0
        filemode = false
        bare = false
        logallrefupdates = true
        symlinks = false
        ignorecase = true
[user]
        name = xh
        email = abbclass@163.com

  1. 系统用户级别:登录当前操作系统的用户范围
git config --global user.name chenyan

git config --global user.email inlett@class.com
就近原则:项目级别优先于系统用户级别,二者都有时采用项目级别的签名;如果只有系统用户级别的签名,就以系统用户级别的签名为准;二者都没有不允许

报错:fatal: not in a git directory

先执行git init 在执行上述命令

基本操作
1.查看工作区、暂存区状态 git status
在genmulu文件下创建一个txt文件

$ git status
On branch master

Initial commit

Untracked files:
  (use "git add <file>..." to include in what will be committed)

        1232.txt   //1232.txt 在工作区,并没有提交到暂存区

nothing added to commit but untracked files present (use "git add" to track)

2.添加到缓存区 git add[file name]

$ git add 1232.txt

10785@LAPTOP-7RTNO1NB MINGW64 /d/gityingyong/genlujing (master)
$ git status
On branch master

Initial commit

Changes to be committed:
  (use "git rm --cached <file>..." to unstage)

        new file:   1232.txt  //已添加到缓存区

3.提交到本地库 git commit -m “commit message” [file name]

$ git commit -m "commit message" 1232.txt   //-m后是说明提交信息
[master (root-commit) 73b2aae] commit message
 1 file changed, 1 insertion(+)
 create mode 100644 1232.txt

如果我们要修改已提交的原文件,需要重新查看工作区、暂存区的状态,然后添加到暂存区,提交到本地库。可以使用git diff[list name]查看修改的内容。

$ git diff 1232.txt
diff --git a/1232.txt b/1232.txt
index 8895b1f..1f83494 100644
--- a/1232.txt
+++ b/1232.txt
@@ -1 +1,2 @@
 自律              //原内容
+自强    //新加内容
\ No newline at end of file

**4.查看历史记录 **

  • git log
  • git log --pretty=oneline
  • git log --oneline
  • git reflog
$ git log
commit f5ceda74161b4c3ddbae3036287909e337357fb5
Author: xh <abbclass@163.com>
Date:   Mon Aug 17 18:06:06 2020 +0800

    第一次修改

commit 73b2aae19cc5ece0f56e4ff000118651231c648d
Author: xh <abbclass@163.com>
Date:   Mon Aug 17 17:53:44 2020 +0800

    commit message

5.前进与后退
本质:移动指针

基于索引值操作[推荐]:

  • git reset --hard [局部索引值]
  • git reset --hard a6ace91

使用^符号:只能后退:

  • git reset --hard HEAD^

注:一个^表示后退一步,n 个表示后退 n 步
使用~符号:只能后退:

  • git reset --hard HEAD~n

注:表示后退 n 步
三、分支操作
同时并行推进多个功能开发,提高开发效率

各个分支在开发过程中,如果某一个分支开发失败,不会对其他分支有任 何影响。失败的分支删除重新开始即可。
1.创建分支 git branch[名]
2.查看分支git branch -v
3.切换分支git checkout[名]

$ git branch fenzhi1   //创建分支


$ git branch -v                  //查看分支
  fenzhi1 f5ceda7 第一次修改
* master  f5ceda7 第一次修改


$ git checkout fenzhi1        //切换分支
Switched to branch 'fenzhi1'


$ git branch -d fenzhi1          //删除分支
Deleted branch fenzhi1 (was f5ceda7).


$ git branch -v             //查看分支
* master f5ceda7 第一次修改

四、添加远程库
1.GitHub 首页就是注册页面:https://github.com/
2.在github页面下创建远程库
3.创建远程库地址别名 git remote add [别名] [远程地址]

$ git remote add origin https://github.com/xh/genlujing.git  //创建别名


$ git remote -v   查看所有远程地址别名
origin  https://github.com/xh/genlujing.git (fetch)
origin  https://github.com/xh/genlujing.git (push)

修改远程地址:git remote set-url origin git@github.com:dizhi
五、从远程库克隆 git clone[远程库地址]

$ git clone https://github.com/dilianmoou/xh.git
Cloning into 'xh'...
remote: Enumerating objects: 3, done.
remote: Counting objects: 100% (3/3), done.
remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (3/3), done.
Checking connectivity... done.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值