Skip to content

一、Git

一、环境配置

1、配置邮箱和用户名

bash
git config --global user.name "我是用户名"
git config --global user.email "我是邮箱"

2、查看邮箱和用户名

bash
git config --global user.name
git config --global user.email

3、常用指令配置别名

用户目录下,创建.bashrc文件

bash
touch ~/.bashrc

配置文件

bash
#用于输出git提交日志
alias git-log='git log --pretty=oneline --all --graph --abbrev-commit'
#用于输出当前目录所有文件及基本信息
alias ll='ls -al'

刷新应用文件

bash
source ~/.bashrc

二、获取本地仓库

执行命令

bash
git init

三、 常用命令

1、查看修改的状态(status)

作用:查看的修改的状态(暂存区、工作区)

命令形式

bash
git status

2、添加工作区到暂存区(add)

作用:添加工作区一个或多个文件的修改到暂存区

命令形式

bash
git add 单个文件名|通配符

将所有修改加入暂存区

bash
git add .

3、提交暂存区到本地仓库(commit)

作用:提交暂存区内容到本地仓库的当前分支

命令形式

bash
git commit -m '注释内容'

4、查看提交日志(log)

作用:查看提交记录

命令形式

bash
git log [option]

options

  • --all:显示所有分支
  • --pretty=oneline:将提交信息显示为一行
  • --abbrev-commit:使得输出的commitId更简短
  • --graph: 以图的形式显示

5、版本回退

作用:版本切换

命令形式

bash
git reset --hard commitID

可以使用 git-log 或 git log 指令查看commitID

查看已经删除的记录

bash
git reflog

通过删除记录,查看commitID

6、添加文件至忽略列表

工作目录创建.gitignore

txt
.a

四、分支

1、查看本地分支 命令

bash
git branch

2、创建本地分支 命令

bash
git branch 分支名

3、切换分支(checkout) 命令

bash
git checkout 分支名

创建并切换

bash
git checkout -b 分支名

4、合并分支(merge)

作用:一个分支上的提交可以合并到另一个分支

bash
git merge 分支名称

5、删除分支

不能删除当前分支,只能删除其他分支

删除分支时,需要做各种检查

bash
 git branch -d b1

不做任何检查,强制删除

bash
git branch -D b1

6、解决合并冲突

当两个分支上对文件的修改可能会存在冲突,例如同时修改了同一个文件的同一行,这时就需要手动解决冲突

  1. 处理文件中冲突的地方
  2. 将解决完冲突的文件加入暂存区(add)
  3. 提交到仓库(commit)

7、开发中分支使用流程

五、远程仓库

1、配置SSH公钥

生成SSH公钥

bash
ssh-keygen -t rsa

不断回车

如果公钥存在,则自动覆盖

设置账户公共钥(gitee)

bash
cat ~/.ssh/id_rsa.pub

验证是否配置成功

bash
ssh -T git@gitee.com

2、添加远程仓库

命令

bash
git remote add <远端名> <仓库路>
  • 远端名称,默认是origin,取决于远端服务器设置

  • 仓库路径,从远端服务器获取此URL

  • bash
     git remote add origin git@gitee.com:czbk_zhang_meng/git_test.git

3、查看远程仓库

命令

bash
git remote

4、推送到远程仓库

命令

bash
git push [-f] [--set-upstream] [远端名称 [本地分支名][:远端分支名]]
  • 如果远程分支名和本地分支名称相同,则可以只写本地分支

    bash
    git push origin master
  • -f 表示强制覆盖

  • --set-upstream 推送到远端的同时并且建立起和远端分支的关联关系

    bash
     git push --set-upstream origin master
  • 如果当前分支已经和远端分支关联,则可以省略分支名和远端名

    bash
    git push

5、查看本地分支与远程分支的关联关系

命令

bash
 git branch -vv

6、克隆远程仓库

命令

bash
 git clone <仓库路> [本地目录]

本地目录可以省略,会自动生成一个目录

7、远程仓库中抓取和拉取

(1)抓取

抓取指令就是将仓库里的更新都抓取到本地,不会进行合并,如果不指定远端名称和分支名,则抓取所有分支

命令

bash
git fetch [remote name] [branch name]

(2)拉取

拉取指令就是将远端仓库的修改拉到本地并自动进行合并,等同于fetch + merge 如果不指定远端名称和分支名,则抓取所有并更新当前分支

命令

bash
git pull [remote name] [branch name]

8、解决合并冲突

远程分支也是分支,所以合并时冲突的解决方式也和解决本地分支冲突相同相同

上次更新::