Git笔记
安装和初始化配置
打开终端或open git bash here,输入
git -v查看版本
使用方式
- 命令行
- 图形化界面(GUI)
- IDE插件/扩展
配置用户名和邮箱
git config --global user.name "xxx"git config --global user.email [email protected]保存用户名和密码
git config --global credential.helper store查看配置信息
git config --global --list
新建仓库
新建一个目录
mkdir learn-git,cd learn-gitgit init即可创建仓库,出现.git文件,表示该目录是一个被git管理的仓库git init后面加文件名,表示新建一个仓库git init xxxgit clone 仓库地址也能创建仓库
工作区域和文件状态
- 工作区(working directory)
- 暂存区(staging area/index)
- 本地仓库(local repository)
工作区指本地电脑,修改文件后使用
git add上传到暂存区,再使用git commit上传到本地仓库
文件状态

添加和提交文件
git init创建仓库git status查看仓库的状态git add添加到暂存区- git add .
- git add *.txt
git commit提交git commit -m "xxx"
Linux命令:echo "文件内容" > 文件名
git log查看提交日志git log --online查看简洁的提交记录
git reset回退版本
git reset --soft保留工作区和暂存区git reset --hard两个都不保留git reset --mixed只保留工作区
git diff查看差异
git diff工作区vs暂存区git diff HEAD工作区+暂存区 vs 本地仓库git diff --cached暂存区vs本地仓库git diff --staged暂存区vs本地仓库git diff <commit_hash> <commit_hash>/git diff HEAD~ HEAD比较提交之间的差异
git diff <branch_name> <branch_name>比较分支之间的差异
git rm删除文件
rm filegit add file先从工作区删除文件,然后暂存删除内容git rm <file>把文件从工作区和暂存区同时删除git rm --cached <file>把文件从暂存区删除,但保留在当前工作区中git rm -r *递归删除某个目录下的所有子目录和文件
.gitignore忽略文件
*通配任意个字符?匹配单个字符[]表示匹配列表中的单个字符,[abc]表示a/b/c**表示匹配任意的中间目录[0-9]表示任意一位数字,[a-z]表示任意一位小写字母!表示取反
ssh配置和克隆仓库
cd.sshssh-keygen -t rsa -b 4096
私钥文件:id_rsa
公钥文件:id_rsa.pub
将公钥添加到GitHub
git pull
git push