git笔记
1. 基本操作
1.1 设置签名
全局
git config --global user.name "用户名" git config --global user.email "邮箱"
项目级别
git config user.name "用户名" git config user.email "邮箱"
1.2 查看日志
查看详细信息
git log
- 多屏显示时:空格翻页,b向上翻页,q退出
单行显示
git log --pretty=oneline
简略显示
git log --oneline
显示步数
git reflog
1.3 前进后退
基于索引值
git reset --hard 局部索引值
单步回退
git reset --hard HEAD^
- 一个^表示后退一步,以此类推
多步回退
git reset --hard~n
- n表示回退n步
reset参数
与暂存区文件比较
git diff 文件名
与本地库中文件比较
git diff 本地库历史版本 文件名 git diff HEAD^ README.md # 与上一版本进行比较
比较多个文件
git diff
1.5 拉取与推送
拉取
pull
git pull 远程仓库 分支
fetch
git fetch 远程仓库 分支
区别:fetch只拉取,不合并,pull=fetch+merge
推送
git push # 或 git push 远程仓库名 分支名
2. 仓库管理
2.1 本地仓库
仓库创建
[新建仓库文件夹],在仓库文件夹下打开git终端
初始化
git init
将文件添加到暂存区
git add 文件名 # 可以使用 git add . 或 git add -A 添加所有
查看状态
git status # 或 git status -s # 简化显示结果,A:提交成功;AM:文件在添加到缓存之后又有改动
提交到本地仓库
git commit -m "备注信息"
推送到远程服务器
git push 远程仓库名或地址
仓库日常操作
正常开发,创建、修改、删除文件
将修改提交到暂存区
git add .
提交到本地库
git commit -m "备注信息"
推送到远程库
git push 远程仓库
其他操作
克隆远程仓库
git clone 仓库地址
拉取远程仓库到本地(同步)
git pull # 或 git pull 远程仓库名 分支名
推送
git push origin master
- 如果远程仓库存在你本地仓库没有的更新,则在推送前你需要先进行一次同步
- 如果不想更新可以使用 -f 选项,强制推送
git push origin master -f
2.2 远程仓库
查看远程仓库
git remote -v
添加远程仓库
git remote add 仓库名 仓库地址 # 仓库名一般用origin # 仓库地址支持 http/https/ssh/git协议
修改远程仓库名
git remote rename 原名 新名
修改远程仓库地址
git remote set-url 仓库名 仓库地址
3. 分支操作
3.1 基本操作
查看分支
git branch -v
创建分支
git branch 分支名
切换分支
git checkout 分支名
删除分支
git branch -d 分支名
3.2 高级操作
合并分支
# 1. 切换到被合并分支 git checkout 分支名 # 2. 合并到主分支 git merge 主分支名
解决冲突
- 编辑文件,删除提示符号,并根据实际情况修改冲突内容
- 添加到缓存区
git add 冲突的文件名
- 提交文件
git commit -m "信息" # 这里不能加文件名
4. 其它操作
4.1
- 修改上次提交
git commit --amend git commit --amend -m ""