You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
3.1 KiB
3.1 KiB
Git学习
来自于Bilibili
【狂神说Java】Git最新教程通俗易懂
Git配置
- 查看Git配置
# 查看系统配置
git config --system --list
# 查看当前用户配置global
git config --global --list
# 查看当前仓库配置
git config -l
- 设置用户标识
# 用户名称
git config user.name "name"
# 邮箱
git config user.email "email"
核心
- 四个区域
-
工作区
-
暂存区
-
仓库区
-
远程仓库
操作
- 初始化
# 本地创建
git init
# 远程克隆
git clone url
- 查看文件状态
# 查看指定文件状态
git status [filename]
# 查看所有文件状态
git status
- 忽略文件
.gitignore
-
注释使用
#
开头 -
通配符
- *任意多字符
- ?一个字符
- [abc]可选字符
- {按不出, ds}可选字符串
- !开头表示特例
-
/开头代表路径
-
/结尾代表路径下所有文件
- 提交流程
# 添加到暂存区
# .代表所有
git add .
# 提交
git commit -m "message"
# 推送到远程
git push
- 分支
# 列出所有本地分支
git branch
# 列出所有远程分支
git branch -r
# 创建一个分支但依然停留在当前分支
git branch [分支名称]
# 创建分支并切换到改分支
git checkout -b [分支名称]
# 切换存在的分支
git checkout [分支名称]
# 切换到远程分支并创建本地分支
# 一般远程分支为 orign/分支名
git checkout -b [新本地分支] [远程分支]
# 删除分支
git branch -d [分支名称]
# 删除远程分支
git push orign --delete [远程分支名称]
git branch -dr [remote/branch]
# 合并分支到当前分支
git merge [分支名称]
- 查看提交记录
# 查看概览
git log
# 查看修改内容
git log -p
# 最近n条记录
git log -[n]
# 查看简介信息
git log --oneline
# 分支变动
git log --graph
# 逆向显示
git log --reverse
# 查找指定用户的提交日志
git log --author=Linus --oneline -5
# 查看指定文件的修改记录
git blame <file>
- 回退版本
$ git reset HEAD^ # 回退所有内容到上一个版本
$ git reset HEAD^ hello.php # 回退 hello.php 文件的版本到上一个版本
$ git reset 052e # 回退到指定版本
- 清空暂存区
- 还没有进行 add . 和 commit 操作
# 只能清空全部已修改的问题件, 但是对于新建的文件和文件夹无法清空, 必须组合下面命令;
$ git checkout .
# 清空所有新建的文件和文件夹;
git clean -d
- 已经 add . 了, 用如下命令重置
$ git reset .
- 远程仓库
# 添加远程仓库
git remote add origin <url>
# 提交到远程仓库
git push -u origin master
# 由于远程库是空的,我们第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令。