#Git学习
文章目录
1 git 配置
1.1 git 邮箱,用户名配置
Git 提供了一个叫做 git config 的工具,专门用来配置或读取相应的工作环境变量
环境配置 | |
---|---|
命令 | git config --global user.name kevin git config --global user.email kevin@bat.com git config --global core.autocrlf false |
信息保存位置 | ~/.git/config |
查看当前配置 | git config --list |
如果用了 –global 选项,那么更改的配置文件就是位于你用户主目录下的那个,
以后你所有的项目都会默认使用这里配置的用户信息。
如果要在某个特定的项目中使用其他名字或者电邮,只要去掉 --global 选项重新配置即可,
新的设定保存在当前项目的 .git/config 文件里
执行 git config --list 可以查看到git配置
删除配置信息git config --global --unset user.email
1.2 git 密钥配置
ssh-keygen -t rsa -b 2048 -C kevin@bat.com
密钥文件:
~/.ssh/id_rsa.pub
2 git bash 操作
在一个文件夹 右键 ->git bash here
2.1 基本指令
$> git init --出现.git文件夹
$> git status --查看工作区、暂存区状态
git add [filename] --将工作区的 “新建/修改” 添加到暂存区
git rm - -cached [filename] --提交到缓存区后悔了, 可以用下面命令撤回
git commit -m "commit message" [filename] --将暂存区的内容提交到本地库
git log --查看历史版本
> git 自动创建 master 分支
> 空格向下翻页,b向上翻页,q退出
2.2 分支指令
git branch -v --查看分支
git checkout -b dev
git branch dev --新建分支
git checkout dev --切换分支
git merge dev --合并分支(将dev合并到当前分支)
git branch -d dev --删除分支
git push origin dev --推送
2.3 提交回退
git reset - -hard [索引值] --回退到指定索引
git reset - -hard HEAD^ --回退到上一步
git reset - -hard HEAD^^^
git reset - -hard HEAD~3 --回退到上三步
**补充**
reset --soft: 工作目录未更改。
reset --mixed: 工作目录已更改为未分级数据。
reset --hard: 工作目录已更改,数据丢失。
git reset --soft A你会看到B和C的东西是绿色的,
(你会在'staged files'区域看到B和C的东西准备提交)
git reset --mixed A (或git reset A ),你会看到B和C的东西是红色的
(你会在'unstaged files'区域看到B和C的东西,准备移动到staged然后提交)
git reset --hard A你将不会再看到B和C的变化
(你将不会再看到B和C的变化, 就好像它们从未存在过)
3 idea配置git
File->Settings->Version Control -> git
path to git executable (选择git文件:git/bin/git.exe)
4 idea操作VCS
VCS->git->clone
{“url”:“git@gitlab…k.git”,“directory”:“D:\project\kev”]
@clone
4.1 Revert Commit 和 UndoCommit等
是否删除对代码的修改 | 是否删除commit记录 | 是否新增Commit记录 | |
---|---|---|---|
Undo Commit | 不会 | 未push会,已push不会 | 不会 |
Revert Commit | 会 | 不会 | 会 |
Drop Commit | 会 | 未push会,已push会 | 不会 |
|未push会,已push不会|不会|
| Revert Commit | 会 |不会|会|
| Drop Commit | 会 |未push会,已push会|不会|