当前位置: > 其它学习 > Git >

Git 命令大全

时间:2023-03-16 22:18来源:linux.it.net.cn 作者:IT
Git命令大全目录
一、项目前的 Git 配置
1. 检查 git 版本
2. 查看 git 相关命令
3. 查看当前的 git 配置信息
4. 查看 git 用户名 或 邮箱
5. 全局配置用户名(设置 git 使⽤者名称)
6. 设置 (配置)全局邮箱
二、Git 对项目代码进行管理
1. 初始化 git 储存
2. 需要提交的所有修改放到暂存区(Stage)
3. 将暂存区的文件恢复到工作区
4. 查看工作区、暂存区的状态
5. 移除暂存区的修改
6. 将缓存区的文件,提交到本地仓库(版本库 )
7. 撤销 commit 提交
三、查看日志
1. 查看历史提交(commit)记录
2. 查看分支合并图
3. 查看版本线图
四、Git 版本控制
1. 回到指定哈希值对应的版本
2. 版本回退
五、分支管理
1. 查看分支
2. 创建分支(依然停留在当前的分支)
3. 切换分支
4. 创建并切换分支(创建一个新的分支,并切换到这个新建的分支上)
5. 合并分支(合并某一个分支到当前分支)
6. 删除分支
7. 删除远程分支
六、远程仓库(团队协作🌟)
1. 克隆远程仓库(从远程仓库拉取代码)
2. 本地库与远程库进行关联
3. 查看远程仓库地址别名
4. 新建远程仓库地址别名
5. 删除本地仓库中的远程仓库别名
6. 重命名远程仓库地址别名
7. 把远程库的修改拉取到本地
8. 将本地的分支推送到远程仓库


 
一、项目前的 Git 配置
1. 检查 git 版本
git --version


 
2. 查看 git 相关命令
git --help



 
3. 查看当前的 git 配置信息
git config --list



 
4. 查看 git 用户名 或 邮箱
# 查询git所使⽤的用户名
git config user.name
# 查询git所使⽤的email
git config user.email
 
# 注: --global 表示全局, 没有--global表示只查询在当前项目中的配置
git config --global user.name
git config --global user.email
 



 
5. 全局配置用户名(设置 git 使⽤者名称)
git config --global user.name "username"



 
6. 设置 (配置)全局邮箱
git config --global user.email "eamil@qq.com"



 
二、Git 对项目代码进行管理
1. 初始化 git 储存
git init


 
2. 需要提交的所有修改放到暂存区(Stage)
git add *  # 将工作区所有修改添加到暂存区
git add .  # 将工作区所有修改添加到暂存区
git add <file-name>  # 将指定文件添加到暂存区
git add *.js  # 提交所有 .js 格式文件
git add -f <file-name>  # 强制添加 指定文件添加到暂存区
 
# 注:<file-name> 指的是文件的名称
 



 
3. 将暂存区的文件恢复到工作区
git reset <file-name>   # 从暂存区恢复指定到工作区
git reset -- .          # 从暂存区恢复所有文件到工作区
git reset --hard        # 把暂存区的修改退回到工作区
 


 
4. 查看工作区、暂存区的状态
git status


 
5. 移除暂存区的修改
git rm --cached <file-name>  # 将本地暂存区的内容移除暂存区


 
6. 将缓存区的文件,提交到本地仓库(版本库 )
git commit <file-name> ... "相关的记录信息"   # 将缓存区的指定文件提交到本地仓库
git commit -m "相关的记录信息"      # 将缓存区的所有文件提交到本地仓库
git commit -am '相关的记录信息'    # 跳过暂存区域直接提交更新并且添加备注的记录信息
git commit --amend '相关的记录信息'  # 使用一次新的commit,替代上一次提交,如果代码没有任何新变化,则用来修改上一次commit的提交记录信息
 



 
7. 撤销 commit 提交
git revert HEAD    # 撤销最近的一个提交(创建了一个撤销上次提交(HEAD)的新提交)
git revert HEAD^   # 撤销上上次的提交
 




 
三、查看日志
1. 查看历史提交(commit)记录
git log    # 查看历史commit记录
git log --oneline  # 以简洁的一行显示,包含简洁哈希索引值
git log --pretty=oneline # 查看日志且并且显示版本
git log --stat     # 显示每个commit中哪些文件被修改,分别添加或删除了多少行
# 注:空格向下翻页,b向上翻页,q退出
 


 
2. 查看分支合并图
git log --graph


 
3. 查看版本线图
git log --oneline --graph



 
四、Git 版本控制
1. 回到指定哈希值对应的版本
git reset --hard <Hash>  # 回到指定 <Hash> 对应的版本
# 注: <Hash> 是版本的哈希值
git reset --hard HEAD    # 强制工作区、暂存区、本地库为当前HEAD指针所在的版本
 



 
2. 版本回退
git reset --hard HEAD~1  # 后退一个版本
# 注:~ 后面的数字表示回退多少个版本
 




 
五、分支管理
1. 查看分支
git branch            # 查看所有本地分支
git branch -r         # 查看所有远程分支
git branch -a         # 查看所有远程分支和本地分支
git branch --merged   # 查看已经合并的分支
 



 
2. 创建分支(依然停留在当前的分支)
git branch <branch-name>  # 创建分支,依然停留在当前的分支
# 注: <branch-name> 是分支的名称
 



 
3. 切换分支
git checkout <branch-name>   # 切换到指定分支,并更新工作区
git checkout -          # 切换到上一个分支
 


 
4. 创建并切换分支(创建一个新的分支,并切换到这个新建的分支上)
git chechout -b <branch-name>  # 创建一个新的分支,并切换到这个新建的分支上


 
5. 合并分支(合并某一个分支到当前分支)
git merge <branch-name>  # 合并<branch-name>分支到当前分支


 
6. 删除分支
git branch -d <branch-name>    # 只能删除已经被当前分支合并的分支
git branch -D <branch-name>    # 强制删除分支
 



 
7. 删除远程分支
git push origin --delete  <remote-branch-name>  
# 注:<remote-branch-name> 远程分支名
 


 
六、远程仓库(团队协作🌟)
1. 克隆远程仓库(从远程仓库拉取代码)
git clone <url>
# 注:<url> 远程仓库的地址
 



 
2. 本地库与远程库进行关联
git remote add origin <url>


 
3. 查看远程仓库地址别名
git remote -v


 
4. 新建远程仓库地址别名
git remote add <alias> <url>
# 注: <alias> 远程仓库的别名
 



 
5. 删除本地仓库中的远程仓库别名
git remote rm <alias>
# 注: <alias> 远程仓库的别名
 



 
6. 重命名远程仓库地址别名
git remote rename <old-alias> <new-alias>
# 注:<old-alias> 旧的远程仓库,<new-alias> 新的远程仓库
 



 
7. 把远程库的修改拉取到本地
git fetch <alias/url> <remote-branch-name>   # 抓取远程仓库的指定分支到本地,但没有合并
git merge <alias-branch-name>                # 将抓取下来的远程的分支,跟当前所在分支进行合并
git pull <alias/url> <remote-branch-name>    # 拉取到本地,并且与当前所在的分支进行合并
# 注: <alias/url> 远程仓库的别名 或者是 远程仓库地址
# <remote-branch-name> 远程分支名
 


 
8. 将本地的分支推送到远程仓库
⚠️ 在推送前要先拉取哦 git pull
 
git push <alias/url> <branch-name>   # 将本地的每个分支推送到远程仓库
git push <alias/url> --force         # 强行推送 当前分支到远程仓库,即使有冲突
git push <alias/url> --all           # 推送所有本地分支到远程仓库
# 注: <alias/url> 远程仓库的别名 或者是 远程仓库地址
#     <branch-name> 本地分支名
 

(责任编辑:IT)
------分隔线----------------------------