1.Git使用前的配置命令
在使用前告诉git你是谁:
-
第一次使用git,配置用户信息
- 配置用户名:
git config --global user.name "your name"
; - 配置用户邮箱:
git config --global user.email "youremail@github.com"
;
- 配置用户名:
-
查询配置信息
- 列出当前配置:
git config --list
; - 列出repository配置:
git config --local --list
; - 列出全局配置:
git config --global --list
; - 列出系统配置:
git config --system --list
;
- 列出当前配置:
-
其他配置
- 配置解决冲突时使用哪种差异分析工具,比如要使用vimdiff:
git config --global merge.tool vimdiff
; - 配置git命令输出为彩色的:
git config --global color.ui auto
; - 配置git使用的文本编辑器:
git config --global core.editor vi
;
- 配置解决冲突时使用哪种差异分析工具,比如要使用vimdiff:
-
注:
- 更改–>重复上述命令
- 也可直接修改
C:\Users\用户\.gitconfig
工作区上的操作命令
提交步骤
-
git init
初始化git仓库新建仓库
- 将工作区中的项目文件使用git进行管理,即创建一个新的本地仓库:
git init
; - 从远程git仓库复制项目:
git clone
; 克隆项目时如果想定义新的项目名,可以在clone命令后指定新的项目名:git clone git://github.com/wasd/example.git NewName
;
- 将工作区中的项目文件使用git进行管理,即创建一个新的本地仓库:
-
git status
查看文件状态查新信息
- 查询当前工作区所有文件的状态:
git status
; - 比较工作区中当前文件和暂存区之间的差异,也就是修改之后还没有暂存的内容:git diff;指定文件在工作区和暂存区上差异比较:
git diff
;
- 查询当前工作区所有文件的状态:
-
git add 文件/文件列表
提交到暂存区提交
- 提交工作区所有文件到暂存区:
git add .
- 提交工作区中指定文件到暂存区:
git add ...
; - 提交工作区中某个文件夹中所有文件到暂存区:
git add [dir]
;
- 提交工作区所有文件到暂存区:
-
git commit -m 提交信息
向仓库提交代码提交文件到版本库
- 将暂存区中的文件提交到本地仓库中,即打上新版本:
git commit -m "commit_info"
; - 将所有已经使用git管理过的文件暂存后一并提交,跳过add到暂存区的过程:
git commit -a -m "commit_info"
; - 提交文件时,发现漏掉几个文件,或者注释写错了,可以撤销上一次提交:
git commit --amend
;
- 将暂存区中的文件提交到本地仓库中,即打上新版本:
-
git log
查看提交记录查看信息
- 比较暂存区与上一版本的差异:
git diff --cached
; - 指定文件在暂存区和本地仓库的不同:
git diff --cached
; - 查看提交历史:git log;参数
-p
展开每次提交的内容差异,用-2
显示最近的两次更新,如git log -p -2
;
- 比较暂存区与上一版本的差异:
2. GIT的常用方法
HTTPS远程仓库的操作
- 创建空目录
mkdir
创建cd
进入 - 使用clone指令克隆
git clone
+地址 - 在文件夹添加文件之后
cd
进入git add
添加 git commit -m
“初始化readme文件”- 在仓库上做对应的操作(提交暂存区、提交本地仓库、提交向上仓库、拉取向上仓库)提交到向上仓库的指令:
git push
- (首次则使用git push -u origin master)
- 没有fatal错误,则提交成功
- 拉取向上仓库
git pull
提醒:每天工作的第一件事就是git pull拉取向上最新的版本,每天下班前要做的是给git push将本地代码提交到线上仓库。
Git常用指令操作
查看当前状态:git status
添加到缓存区:git add
文件名
提交至版本库:git commit -m
“注释内容”
时间穿梭机:
①查看版本,确定要回到的时间点
指令: git log
git log --pretty=oneline
②回退操作
指令: git reset --head
提交编号
SSH远程仓库操作
- 创建公私钥文件 ssh-keygen -t rsa -C “邮箱”
- 复制公钥搭并上传公钥文件内容
- 执行后续git操作,操作与先前一样
- clone向上仓库到本地(git clone)
- 修改文件后添加缓存区 git add
Git的分支操作
分支相关指令:
- 查看分支:git branch
- 创建分支:git branch 分支名
- 切换分支:git checkout 分支名
- 删除分支:git branch -d 分支名
- 合并分支:git merge 被合并的分支名
注意:在删除分支的时候,一定要先退出删除的分支,然后才能删除
合并所有分支之后,需要将master分支提交向上远程仓库中(git push)
冲突的产生与解决
案例:模拟产生冲突
①别人修改
②次日我修改
③先git pull保留所需要的东西后重新提交
GitHub for Desktop
忽略文件
一些目录即便有改动,我们也不想让其提交到远程仓库的文档,此时我们可以使用“忽略文件”机制来实现需求
忽略文件需要新建一个名为.gitignore文件,该文件用于声明忽略文件或不忽略文件的规则,规则对当前目录及其子目录生效
注意:该文件没有文件名,没办法直接在windows目录下直接创建,可以通过命令行git bash来touch创建
/mtk/ | 过滤整个文件夹 |
---|---|
*.zip | 过滤所有.zip文件 |
/mtk/do.c | 过滤某个具体文件 |
!index.php | 不过滤具体某个文件 |
在文件中,以#
开头的是注释