Git 常用命令

84 阅读2分钟

Git 全局信息配置

# 显示当前git配置
$ git config --lsit

# 配置用户名
$ git config --global user.name "bolonotlobo"

# 配置邮箱
$ git config --global user.email "bytemaster2025@gmail.com"

初始化Git代码库

  • 生成 .git 文件
# 初始化一个文件夹,让 Git 来管理
$ git init

# 新建一个目录将其初始化让 Git 来管理
# 会创建一个 git-demo 文件夹
$ git init git-demo

# 克隆一个项目
$ git clone [github仓库url]

暂存区 添加、删除、恢复

# 添加指定文件到暂存区
$ git add README.md

# 添加指定目录到暂存区
# 把 assets 这个文件夹下所有内容添加到暂存区
$ git add assets/

# 添加该工作区所有文件到暂存区
$ git add .
$ git add --all

# 把暂存区的内容拉回工作区
$ git rm --cached README.md

$ git reset HEAD -- [文件名]   # 拉回一个文件
$ git reset HEAD -- [文件夹名]  # 拉回一个文件夹
$ git reset HEAD -- .   # 全部拉回

# 改名文件,并且将这个改名放入暂存区
# 注意: 这里是更改暂存区里文件名
$ git mv [file-original] [file-renamed]

# 恢复暂存区的指定文件到工作区、会覆盖工作区的该文件
$ git checkout [文件名]

# 恢复暂存区的所有文件到工作区
$ git checkout .

历史区(也叫本地仓库区) 提交、回退

# 提交暂存区到 历史区
$ git commit -m [message]   # message 写详细点,每次提交做了什么事

# 提交暂存区指定文件到 历史区
$ git commit [file1] [file2] ... -m [message]

# 回退到某次提交的版本
$ git reset --hard [版本id]     # 工作区和暂存区都会被重置

# 恢复历史区的某个版本上指定文件到工作区
$ git checkout [版本历史id] [要恢复的指定文件名]
$ git checkout 724a1992ab1bb9365b3e829e4307c6d07409a0ac index.html  # 例子

Git 分支 新建、切换、删除

# 查看当前分支情况
$ git branch

# 新建分支,新建 dev 分支
$ git branch dev

# 切换到指定分支,切换到 dev 分支
$ git checkout dev

# 切换到上一个分支上
$ git checkout -

# 新建分支并且切换到该分支,新建feature-login分支,并且到该分支
$ git checkout -b feature-login

# 删除本地分支
# 要删除当前分支必须先切换到其他分支上才能删除
$ git branch -d [分支名]  
$ git branch --delete [分支名]

# 删除远程分支
$ git push origin -d [分支名]
$ git push origin --delete [分支名]

Git 分支合并

# 合并某个分支到当前分支上
$ git merge [分支名]

Git 查看信息

# 显示状态
$ git status

# 查看当前分支的历史提交
$ git log

# 查看历史提交 一行显示
$ git log --pretty=oneline

# 查看历史提交 可视化打开
$ gitk

# 显示某次提交的元数据和内容变化
$ git show [版本id]

Git 远程

# 新增一个远程仓库,并命名
# 这里的 remote-shortname 相当于给这个远程仓库信息起的变量名
$ git remote add [remote-shortname] [url]  
$ git remote add origin https://github.com/bolonotlobo/git-remote-demo.git  # 例子

# 提交代码到远程仓库
$ git push [remote-shortname] [branch]

# 显示远程仓库的信息
# 我们来查看下 "origin" 这个仓库的信息的信息
$ git remote show origin

# 修改origin 这个变量对应的仓库url 方法1
$ git remote set-url origin [url]

# 修改origin 这个变量对应的仓库url 方法2
$ git remote rm origin  # 先删除
$ git remote add origin [url] # 再添加

# 显示所有远程仓库
$ git remote -v

# 下载远程仓库的所有变动
$ git fetch [remote]

# 推送所有分支到远程
git push [remote] --all

其他

# 暂时将未提交的变化移除,稍后再移入
$ git stash
$ git stash pop

补充远程连接github

  1. 本地git和github使用SSH来通信的,前提先配置 SSH密钥。