git学习笔记 📑
基本步骤
- 安装git
- 文件夹里右键git base here
- 初始化本地仓库 git init
- 远程仓库GitHub:
①注册账号
②新建项目
③本地仓库与远端仓库建立连接:
在git里输入ssh-Keygen后,设置ssh存放等配置信息,找c盘里(默认在C盘)。ssh文件夹里id_rsa.pub,复制文件里的ssh密钥
粘贴到
④配置本地环境
git config --global user。name 全局设置用户名
git config --global user。email 全局设置用户邮箱
git config --list 查看谁操作过
⑤本地添加远端仓库:
要添加一个新的远程仓库,可以指定一个简单的名字,以便将来引用,运行 git remote add [shortname] [url]:
例如:$ git remote add origin https://github.com/rogurlearner/test-again.git GIT里添加远端仓库地址
本地仓库与远程仓库的关联
- 查看远程仓库:git remote –v
- 添加源仓库地址为远程仓库:git remote add <name> <remote>
- 远程仓库重命名:git remote rename old new
基础工作流
克隆仓库:git clone repository repository是要下载的远程地址
查看当前文件的状态:git status
提交到暂存区:git add <pathspe> git add 。表示所有更改都提交到暂存区
提交到本地仓库:git commit -m "...”-m是表示后面可以写信息,提示这次提交的是什么
提交内容到远程仓库:git push <remote> <branch> 例:git push origin master:master本地master提交到远程master 。git push origin master:dev本地master提交到远程dev 如果远程没有dev分支自动创建一个dev分支 。
工作目录就是正在操作的项目,暂存区时代码暂时存放的地方(代码没写完),完整的代码才能提交到本地仓库图片
花式撤销 – 本地版本库回退
- 撤销工作区修改:git checkout -- <file> 回退到上一次全部修改
- 暂存区文件撤销(不覆盖工作区):git reset HEAD<file> git reset HEAD^回退一个版本 git reset HEAD~1也是回退一个版本
- 版本回退:git reset --(soft | mixed | hard) <HEAD~(num )> | <commit ID> hard:工作区、暂存区、本地仓库回退到某一个版本 mixed:工作区是最新的没有回退,暂存区、本地仓库回退到某一个版本 soft:工作区和暂存区是最新的没有回退、本地仓库回退到某一个版本
差异比较--能看出哪里改了
- 比较工作区与暂存区:git diff
- 比较工作区与本地版本库中最近一次commit的内容:git diff HEAD
- 比较暂存区与本地版本库中最近一次commit的内容:git diff --cached
- 比较两个commit之间的差异:git diff <commit-id> <commit-id>
状态查询
- 查看状态:git status
- 查看日志:git log <fileName>
- 查看历史操作记录:git reflog
分支操作之基础工作流
- 什么是分支:同一个项目,可以写不同的方案
- 查看分支:git branch
- 创建新分支:git branch <name>
- 切换分支:git checkout <name>
- 创建并切换分支:git checkout –b <name>
- 删除本地分支:git branche –d <name>
- 删除远程分支:git push -d <origin> <branch>
- 分支合并&处理冲突
无冲突时:git merge <branch> <branch>是分支名
有冲突时:git merge <branch>后 上面是当前更改 下面是传入时的更改
解决冲突后
git add <pathspec>
git commit -m "...”
文档查询
- 展示Git命令大纲及常用命令:git help(--help)
- 展示Git命令大纲及全部命令列表:git help –a
- 展示具体命令说明手册:git help <command>
文件暂存
- 添加改动到stash:git stash save -a "messeag”
- 查看stash列表:git stash list
- 恢复改动:git stash pop <stash@{id}>
- 删除暂存:git stash drop <stash@{id}>
- 删除全部暂存:git stash clear