- git init 初始化
- git log 查看当前git提交记录
- git remote 命令
- git pull origin xxx 拉取代码
- git add . 将文件保存到缓存区
- git commit -m ‘xxx’ 提交到本地仓库
- git push origin xxx 推送到远程仓库
- git pull url 拉取远程仓库的代码且与本地代码合并
- git fetch url 拉取远程仓库的代码不合并,以远程代码为准
- fetch与pull的区别
- git config git配置
- git status
- git branch 查看分支
- git reset —hard “HEAD^” 回退
- git reset —hard xxx 回退到指定的版本
- git reflog 查询所有提交点
- .gitignore 忽略的目录或文件
- git rm -r —cached 删除缓存区文件
- 合并分支
- git diff 统计文件改动
git init 初始化
将当前目录初始化为 git 本地仓库,此时会在本地创建一个 .git 的文件夹
git init -q
静默执行,就是在后台执行
git init —bare
–bare
参数,一般用来初始化一个空的目录,作为远程存储仓库
git init —template dir
–template
参数,相当于将已有的git仓库目录复制一份出来,生成新的仓库,dir是原git目录;
git init --template ../project
git init —separate-git-dir dir
相当于复制仓库dir
目录(可以是工作仓库,也可以是存储仓库)中的.git
目录,只复值.git
目录
git init --separate-git-dir ../project
git log 查看当前git提交记录
查看git提交记录,只看提交带本地仓库的记录;
git log
--oneline
简化git日志输出格式
$ git log --oneline
3662c32 (HEAD -> v1.0.0, origin/v1.0.0) feat: 表单已完成,等待接口完善
661dfc0 (origin/master, origin/HEAD, master) init
git remote 命令
git remote add origin url 创建远程仓库
在git服务器上创建一个远程仓库,这里以码云为例
git remote add origin https://gitee.com/你的码云用户名/projectName
git remote -v 查看本地添加了哪些远程分支的地址
$ git remote -v
origin http://git.woa.com/bkdevops-plugins/fitFmqPulsarTopicAutoDeploy.git (fetch)
origin http://git.woa.com/bkdevops-plugins/fitFmqPulsarTopicAutoDeploy.git (push)
git remote remove xxx
删除本地指定的远程地址
git remote remove origin
git pull origin xxx 拉取代码
拉取指定分支的代码,master 是分支名称
git pull origin master
git add . 将文件保存到缓存区
你新增的文件是不可以直接提交的,必须先将文件添加到缓存区;
# 把新增的、修改的都加到缓存
git add .
# 把新增、和修改的、和删除的都加到缓存
git add -A
# 添加 file文件或目录到缓存区
git add + file
git commit -m ‘xxx’ 提交到本地仓库
将缓存区的文件提交到本地仓库
# 提交缓存区的所有文件到本地仓库
git commit -m '新添加的文件内容描述'
# 提交指定的文件到本地仓库
git commit -o index.html about.html -m '我同时提交了 工作区的index.html 和 暂存区的about.html 这两个文件'
git push origin xxx 推送到远程仓库
push 是将本地仓库中的代码推送到远程仓库
# 将本地仓库的代码推送到远程仓库的master分支
git push origin master
git pull url 拉取远程仓库的代码且与本地代码合并
拉取指定git url的代码,未指定分支的情况下,默认拉取master分支
git clone https://xxx.git
git拉取远程指定分支下代码(-b 分支名称)
git clone -b v2.8.1 https://xxx.git
git fetch url 拉取远程仓库的代码不合并,以远程代码为准
git fetch origin master
fetch与pull的区别
- fetch是将远程主机的最新内容拉到本地,不进行合并
- pull 则是将远程主机的master分支最新内容拉下来后与当前本地分支直接合并 fetch+merge
git config git配置
查看git的配置信息
# 执行后,,进入编辑状态,按 Q 退出
git config -l
修改配置
# git配置本地仓库的userName(必须)
git config user.name 'Lee'
# git配置本地仓库的邮箱(必须)
git config user.email '12345@qq.com'
git status
查看当前git状态信息(查看是否有文件未提交),以下示例提示有个 index.html
的文件修改了未提交,Untracked files表示忽略的目录或文件
$ git status
On branch v1.0.0
Your branch is up to date with 'origin/v1.0.0'.
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git restore <file>..." to discard changes in working directory)
modified: src/index.html
Untracked files:
(use "git add <file>..." to include in what will be committed)
../.idea/
no changes added to commit (use "git add" and/or "git commit -a")
git branch 查看分支
git branch -r 查看所有的远程分支
origin/HEAD 是一个默认分支的指针,指向了master,表示origin/master就是默认分支
$ git branch -r
origin/HEAD -> origin/master
origin/master
origin/v1.0.0
git branch -a 查看所有的分支(包含远程和本地)
*
表示当前选择的分支
$ git branch -a
master
* v1.0.0
remotes/origin/HEAD -> origin/master
remotes/origin/master
remotes/origin/v1.0.0
git reset —hard “HEAD^” 回退
可以用来删除已提交到本地仓库的版本,回退到上一个版本,切记,谨慎使用,执行多次会恢复到之前的版本,且代码不可恢复( —hard表示全恢复 )
# 以下2种用法,linux系统使用第一种,win系统使用第二种
git reset --hard HEAD^
git reset --hard "HEAD^"
git reset —hard xxx 回退到指定的版本
回退到指定的版本,提交点:可用ID或标签
# 回退到指定的版本号
git reset --hard 3662c32f
git reflog 查询所有提交点
回退后需要反悔的话,需要通过此命令查找到所有操作的提交点
git reflog
.gitignore 忽略的目录或文件
目录下建立一个.gitignore文件(可以有多个,影响范围当前文件及子文件),文件内可指定提交时忽略的文件和目录,可 同时忽略多个
touch .gitignore
git rm -r —cached 删除缓存区文件
删除缓存区的所有文件, .
表示所有
git rm -r --cached .
删除缓存区指定的文件
git rm -r --cached index.html
合并分支
合并分支reking和主干master,合并后的提交点属于主干master
git checkout master
git rebase reking
git diff 统计文件改动
比较本地 v1.0.0
分支和远程分支origin/master
的差异
$ git diff --stat v1.0.0 origin/master
bk-frontend/package.json | 5 +-
bk-frontend/src/Atom.vue | 63 ++++++++++++
bk-frontend/src/data/Index.vue | 187 ------------------------------------
bk-frontend/src/data/LocalAtom.vue | 74 ++++++++++++++
bk-frontend/src/data/PublicAtom.vue | 103 ++++++++++++++++++++
bk-frontend/src/data/task.json | 49 ++++++++++
bk-frontend/src/main.js | 11 +--
7 files changed, 295 insertions(+), 197 deletions(-)