目 录CONTENT

文章目录

Git 操作命令

JomBarry
2023-09-26 / 0 评论 / 2 点赞 / 53 阅读 / 0 字 / 正在检测是否收录...

git 操作命令记录

#### Git 基础操作
# 查看配置项目内的配置信息
cat .git/config
# 查看 git 设置列表
git config --list
# 设置 git 用户名(全局)
git config --global user.name 'user_name'
# 设置 git 用户的邮箱(全局)
git config --global user.email 'user_email'
# 配置项目 Git 用户名(本地单个项目)
git config --local user.name 'name'
# 配置项目 Git 邮箱(本地单个项目)
git config --local user.emial 'xxx@msun.com'
###
###
# 初始化 git 仓库,文件夹中会出现名为 ".git" 的隐藏文件夹
git init
# 查看文件夹中的文件状态
git status
# 把工作区中名为 "file_name" 的文件添加到暂存区,并跟踪 "file_name" 文件
git add file_name
# 把工作区中的所有文件提交到暂存区,并跟踪所有文件
git add .
# 把暂存区中的文件提交到版本库,description 为本次提交的描述信息
git commit -m 'description'
# 把已跟踪的工作区中的文件同时提交到暂存区和版本库,跳过了 git add 这个阶段
git commit -am 'description'
# 查看提交的记录,如果加上参数 --oneline
git log
# 单行显示每条提交记录
git log --oneline



#### Git 拉取和撤销操作
# 撤销分支
git reset --merge
# 撤销合并(xxxx 分支)
git revert --no-edit xxxx -m 1
# 问题:commit XXX is a merge but no -m option
# 原因:因为对于revert merge的情况,我们需要指出revert 这个merge commit中的哪一个。通过-m或者--mainline参数,以及配合一个整数参数,git就知道到底要revert哪一个merge。
# 把当前版本库中的 "file_name" 文件从版本库拉取到暂存区
git reset HEAD file_name
# 把版本号对应的提交版本中的 "file_name" 文件从版本库拉取到暂存区
git reset '版本号' file_name
# 把当前版本库中的所有文件拉取到暂存区
git reset HEAD .
# 把版本号对应的提交版本中的所有文件从版本库中拉取到暂存区
git reset '版本号' .
# 把暂存区中的 "file_name" 文件拉取到工作区
git checkout -- file_name
 # 把暂存区中的所有文件拉取到工作区
git checkout -- .
# 撤销上一次 commit,并把暂存区中的文件重新提交,用户可以修改提交的描述信息
git commit --amend
# 跳到之前的分支
git checkout -



### Git 删除文件和重命名文件
# 删除暂存区中的 "file_name" 文件,保留工作区中的 "file_name" 文件,并把工作区中的 "file_name" 设置为"未被跟踪"的状态(即Untracked状态)。可以用于取消对某个文件的跟踪。
git rm --cached file_name
# 删除暂存区和工作区中的 "file_name" 文件
git rm -f file_name
# 把暂存区和工作区中的 "file_name_1" 文件重命名为 "file_name_2"
git mv file_name_1 file_name_2



### Git 分支操作
# 查看所有分支
git branch
# 创建分支,命名为 "branch_name"
git branch branch_name
# 切换到 "branch_name" 分支
git checkout branch_name
# 创建分支,命名为 "branch_name",并切换到 "branch_name" 分支
git checkout -b branch_name
# 删除 "branch_name" 分支
git branch -d branch_name
# 把 "branch_name_1" 分支重命名为 "branch_name_2"
git branch -m branch_name_1 branch_name_2
# 合并当前分支和 "branch_name" 分支
git merge branch_name
# 创建新的远程分支
git push --set-upstream origin + '刚刚创建的分支名'
# 移除远程仓库上不存在的分支
git fetch -p
# 移除所有包含 `greenkeeper` 的分支
git fetch -p && git branch --remote | fgrep greenkeeper | sed 's/^.\{9\}//' | xargs git push origin --delete
# 重新整理获取远程分支
git remote prune origin


# Git 提交日志操作
# 每一个提交在一行显示
git log --oneline
# 在所有提交日志中搜索包含「homepage」的提交
git log --all --grep='homepage'
# 获取某人的提交日志
git log --author='某人'


### Git 比较操作
# 保存工作区中文件内容的变更,并将文件内容恢复为变更前的内容
git stash
# 查看变更记录
git stash list
# 把序号为 x 的变更记录恢复到工作区
git stash apply stash@{x}
# 删除序号为 x 的变更记录
git stash drop stash@{x}
# 把序号为 x 的变更回
复到工作区,并将其从变更记录中删除
git stash pop stash@{x}



### Git 保存变更操作
# 把 master 分支中的文件推送到 github 上的 master 分支。
git push https://github.com/xxxxx/xxxxx master
# 把 github 上 master 分支中的文件拉取到本地当前分支,并与该分支合并
git pull https://github.com/xxxxx/xxxxx master
# 获取所有操作历史
git reflog
# 拉取其他分支到此分支 xxxx - 需要拉去的分支
git pull origin xxxx


2
  1. 支付宝打赏

    qrcode alipay
  2. 微信打赏

    qrcode weixin
Traffmonetizer VPS 回血赚取额外收益

评论区