git 常用命令参考

Git 常用命令参考

配置

# 查看配置列表
git config -l

# 查看已设置的用户名
git config --global --get user.name

# 设置用户名
git config --global user.name "xiejiahe"

# 查看已设置的邮箱
git config --global --get user.email

# 设置邮箱
git config --global user.email "example@example.com"

初始化本地仓库

# 会在当前目录生成.git
git init

查看文件状态

git status

日志

# 查看完整历史提交记录
git log

# 查看前N次提交记录 commit message
git log -2

# 查看前N次提交记录,包括diff
git log -p -2

# 搜索关键词
git log -S 你好

# 列出提交者贡献数量
git shortlog -sn

克隆

# https 协议
git clone https://github.com/xjh22222228/git-manual.git

# SSH协议
git clone xjh22222228@github.com/xjh22222228/git-manual.git

# 克隆某个分支, -b 后面分支名字
git clone -b v2.8.0 https://github.com/xjh22222228/git-manual.git

# 递归克隆,如果项目包含子模块就非常有用
git clone --recursive xjh22222228@github.com/xjh22222228/git-manual.git

# 克隆深度为1, 不会把历史的记录也克隆,这样可以节省克隆时间
git clone --depth=1 https://github.com/xjh22222228/git-manual.git

查看分支

# 查看所有分支
git branch --all

# 查看本地分支
git branch

# 查看远端分支
git branch -r

切换分支

# 2种方法,切换到master分支
git checkout master
git switch master

# 切换上一个分支
git checkout -

创建分支

# 创建develop分支
git branch develop

# 创建develop分支并切换
git checkout -b develop

# 切换远端分支
git checkout -t origin/dev

分支重命名

# 重命名当前分支
git branch -m <branchName>

代码合并

# 两步法, 将 feature/v1.0.0 分支代码合并到 develop
git checkout develop
git merge feature/v1.0.0

# 或者一步法
git merge feature/v1.0.0 develop

添加到暂存区

# 暂存所有
git add -A

# 暂存某个文件
git add ./README.md

# 添加当前目录所有改动文件
git add .

# 暂存一系列文件
git add 1.txt 2.txt ...

删除暂存区文件

# 删除1.txt 文件
git rm 1.txt

提交到历史区

# -m 提交的信息
git commit -m "changes log"

# 提交显示diff变化
git commit -v

推送到远程

# 推送内容到主分支
git push -u origin master

# 本地分支推送到远程, 本地分支:远程分支
git push origin <branchName>:<branchName>

# 简写,默认推送当前分支
git push

# 强制推送, -f 是 --force 缩写
git push -f

拉去最新内容

# 推荐使用这个,因为不会做自动合并
git fetch origin master

# 相当于git fetch 然后 git merge
git pull

# 后面的意思是: 远程分支名:本地分支名
git pull origin master:master

# 如果是要与本地当前分支合并,则冒号后面的<本地分支名>可以不写
git pull origin master

应用当前分支的修改到切换的分支中

由于 git stash的堆栈是所有分支共享的,所以 master分支也可以取得dev分支的修改,过程非常的简单。

# 保存dev分支的修改到堆栈中
$ git stash

# 切换master分支
$ git checkout master

# 取回堆栈最新的修改
$ git stash pop

# 或者取回堆栈指定的修改
$ git stash apply stash@{0}

不应用当前分支的修改,单纯地切换分支

很多时候我们并不想提交,只是想单纯的切换分支,不想把修改带到切换的分支,那就使用git stash保存工作区和暂存区的修改到堆栈中,就可以切换到master分支了,当切回dev分支时再执行git stash pop取回原先的修改就可以了。执行命令如下:

# 保存dev分支的修改到堆栈中
$ git stash

# 切换master分支
$ git checkout master

# 切回dev分支的时候,获取上次修改没有提交的数据操作如下:
$ git checkout dev

# 获取堆栈列表
$ git stash list

# 对比本地与堆栈条目差异
$ git stash show stash@{0}

# 对比本地与堆栈条目详细代码差异
$ git stash show stash@{0} -p

# 取回堆栈最新的修改
$ git stash 

查看文件改动

# 查看所有文件改动
git diff

# 查看具体文件的改动
git diff README.md

# 查看某个版本的改动, 后面那一窜是commitId, git log后就能看到
git diff d68a1ef2407283516e8e4cb675b434505e39dc54

# 查看某个文件的历史修改记录
git log README.md
git show d68a1ef2407283516e8e4cb675b434505e39dc54 README.md

回滚历史版本

# 回滚上一个版本
git reset --hard HEAD^

# 回滚上两个版本
git reset --hard HEAD^^

# 回退到指定版本,git log 就能看到commit id了
git reset --hard 'commit id'

# 回滚版本是不保存在 git log,如果想查看使用
git reflog

撤销

# 撤销当前目录下所有文件的改动
git checkout -- .

# 撤销指定文件修改
git checkout -- README.md

# 暂存区回到工作区, 指定 ./README.md 文件从暂存区回到工作区
git reset HEAD ./README.md

# 撤销commit, 回到工作区, 一般commit id 是前一个
git reset <commit_id>

# 撤销commit, 并且把修改同时撤销
git reset --hard <commit_id>

其他

# 查看远程仓库地址
git remote -v

# 记住提交账号密码
git config --global credential.helper store

# 清除git已保存的用户名和密码
# windows
git credential-manager uninstall
# mac linux
git config --global credential.helper store

# 清除本地git缓存
git rm -r --cached .
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
常用的git命令操作包括: 1. git init:初始化一个新的git仓库。 2. git add [file]:将文件添加到暂存区。 3. git commit -m "message":提交暂存区的文件到版本库,并附带一条提交信息。 4. git status:查看工作区文件的状态。 5. git log:查看提交历史记录。 6. git diff:查看当前文件和最新提交之间的差异。 7. git branch:查看所有分支,包括当前所在分支。 8. git checkout [branch]:切换到指定分支。 9. git merge [branch]:将指定分支的更改合并到当前分支。 10. git push [remote-name] [branch-name]:将本地分支推送到远程仓库。 11. git pull [remote-name] [branch-name]:从远程仓库获取并合并最新的更改。 12. git clone [repository]:克隆远程仓库到本地。 请注意,具体命令的使用可能会根据实际情况有所变化,如指定远程仓库名称、分支名称等。以上只是git常用命令的简要介绍,更多详细的命令和操作可以通过git文档或在线教程进行学习和参考。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Git的常用操作命令汇总](https://blog.csdn.net/qq_38628046/article/details/125346546)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [常用git命令总结大全](https://blog.csdn.net/wuhuagu_wuhuaguo/article/details/79054792)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值