git安装我就不说了,自己能查到自己对应系统的安装教程。
命令大全部分
Git 配置
git --version #git版本
git --help #git 相关命令
# 查询git所使⽤的用户名
git config user.name
# 查询git所使⽤的email
git config user.email
# 注: --global 表示全局, 没有--global表示只查询在当前项目中的配置
git config --global user.name
git config --global user.email
git config --global user.name "username" #全局配置用户名(设置 git 使⽤者名称)
git config --global user.email "啥啥啥@啥啥啥.com" #设置 (配置)全局邮箱
Git 对项目代码进行管理
git init #初始化 git 储存(一般在文件夹的终端底下)
git add * # 将工作区所有修改添加到暂存区
git add . # 将工作区所有修改添加到暂存区
git add <文件名> # 将指定文件添加到暂存区
git add *.js # 提交所有 .js 格式文件
git add -f <文件名> # 强制添加 指定文件添加到暂存区
git reset <文件名> # 从暂存区恢复指定到工作区
git reset -- . # 从暂存区恢复所有文件到工作区
git reset --hard # 把暂存区的修改退回到工作区
git status #查看工作区、暂存区的状态
git rm --cached <file-name> # 将本地暂存区的内容移除暂存区
git commit <file-name> ... "相关的记录信息" # 将缓存区的指定文件提交到本地仓库
git commit -m "相关的记录信息" # 将缓存区的所有文件提交到本地仓库
git commit -am '相关的记录信息' # 跳过暂存区域直接提交更新并且添加备注的记录信息
git commit --amend '相关的记录信息' # 使用一次新的commit,替代上一次提交,如果代码没有任何新变化,则用来修改上一次commit的提交记录信息
git revert HEAD # 撤销最近的一个提交(创建了一个撤销上次提交(HEAD)的新提交)
git revert HEAD^ # 撤销上上次的提交
Git 版本控制
git reset --hard <Hash> # 回到指定 <Hash> 对应的版本
# 注: <Hash> 是版本的哈希值
git reset --hard HEAD # 强制工作区、暂存区、本地库为当前HEAD指针所在的版本
git reset --hard HEAD~1 # 后退一个版本
# 注:~ 后面的数字表示回退多少个版本
分支管理
git branch # 查看所有本地分支
git branch -r # 查看所有远程分支
git branch -a # 查看所有远程分支和本地分支
git branch --merged # 查看已经合并的分支
git branch <branch-name> # 创建分支,依然停留在当前的分支
# 注: <branch-name> 是分支的名称
git checkout <branch-name> # 切换到指定分支,并更新工作区
git checkout - # 切换到上一个分支
git chechout -b <branch-name> # 创建一个新的分支,并切换到这个新建的分支上
git merge <branch-name> # 合并<branch-name>分支到当前分支
git merge <branch-name> # 合并<branch-name>分支到当前分支
git branch -d <branch-name> # 只能删除已经被当前分支合并的分支
git branch -D <branch-name> # 强制删除分支
git push origin --delete <remote-branch-name>
# 注:<remote-branch-name> 远程分支名
远程仓库
git clone <url>
# 注:<url> 远程仓库的地址(https://xxxxxxxx/x/x/x/x/xxxx/x/x/xxxx.git)
git remote add origin <url> #本地库与远程库进行关联
git remote -v #查看远程仓库地址别名
git remote add <alias> <url> #新建远程仓库地址别名
# 注: <alias> 远程仓库的别名
git remote rm <alias> #删除本地仓库中的远程仓库别名
# 注: <alias> 远程仓库的别名
git remote rename <old-alias> <new-alias> #重命名远程仓库地址别名
# 注:<old-alias> 旧的远程仓库,<new-alias> 新的远程仓库
#把远程库的修改拉取到本地
git fetch <alias/url> <remote-branch-name> # 抓取远程仓库的指定分支到本地,但没有合并
git merge <alias-branch-name> # 将抓取下来的远程的分支,跟当前所在分支进行合并
git pull <alias/url> <remote-branch-name> # 拉取到本地,并且与当前所在的分支进行合并
# 注: <alias/url> 远程仓库的别名 或者是 远程仓库地址
# <remote-branch-name> 远程分支名
#将本地的分支推送到远程仓库
#tip:在推送前要先拉取哦 git pull
git push <alias/url> <branch-name> # 将本地的每个分支推送到远程仓库
git push <alias/url> --force # 强行推送 当前分支到远程仓库,即使有冲突
git push <alias/url> --all # 推送所有本地分支到远程仓库
# 注: <alias/url> 远程仓库的别名 或者是 远程仓库地址
# <branch-name> 本地分支名
资源提供部分
macOS里的git访达工具(开源):
AppStore里直接搜,添加好了是这样:
windows里的git工具:
这个我没用过 😭,教程网上有(12条消息) 【TortoiseGit】TortoiseGit安装和配置详细说明_No8g攻城狮的博客-CSDN博客
在这里鸣谢一下作者:No8g攻城狮