Git常用命令
2021-04-17 14:27:43 55 举报
AI智能生成
Git常用命令
作者其他创作
大纲/内容
仓库配置
创建仓库
git init 本地初始化一个仓库
git clone 从远程克隆到本地
-b 克隆指定分支
--no-tags 不克隆任何tag
-o <名称> 自定义仓库名称
git配置
git config --list 显示当前的Git配置
设置提交代码时的用户信息
配置全局用户名和邮箱
git config --global user.name "[name]"
比如:git config --global user.name "yousali"
git config --global user.email "[email address]"
配置当前仓库用户名和邮箱
git config user.name "[name]"
git config user.email "[email address]"
编辑Git配置文件
git config -e --global 编辑全局仓库配置
git config -e 编辑本地仓库配置
远程仓库地址
git remote add origin [远程仓库地址] 添加远程仓库地址
git remote set-url origin [远程仓库地址] 修改远程仓库地址
查看状态/日志
状态
git staus 查看工作目录和暂存区的状态
git diff 查看本地代码变化状态(add操作之前)
git show [commitId] 查看指定版本的提交变动详情
日志
当前分支
git log 查看所有的提交的历史记录
--graph 绘制提交的线索的历史记录
--oneline 输出时,只显示每条日志的第一行
-p 会显示每次提交时改动的地方详情
--name-status 显示每次提交对应的文件改动
--author [authorName] 搜索指定人的提交记录
git log [FileName] 查看指定文件的提交记录
参数同上
全局
git reflog 查看所有分支的所有提交记录(包括commit和reset的操作)
拉取
git fetch 同步远程commit到本地
步骤
1.git fetch origin master:tmp 在本地新建一个temp分支,并将远程origin仓库的master分支代码下载到本地temp分支
2.git diff tmp 来比较本地代码与刚刚从远程下载下来的代码的区别
3.git merge tmp 合并temp分支到本地的master分支
4.git branch -d temp 如果不想保留temp分支 可以用这步删除
git pull 拉取最新代码(先git fetch,然后git merge)
提交
暂存区(add操作)
添加
git add . 提交全部修改到暂存区
git add [fileName] [fileName] 提交指定文件到暂存区
git add [dir] 添加指定文件夹到暂存区
删除
git rm --cache [fileName] 删除暂存区文件的指定文件(本地工作区未删除)
git rm -f [fileName] 删除暂存区和本地工作区的指定文件
git rm -r [dir] 删除文件夹
本地仓库(commit操作)
提交
git commit 提交暂存区到本地仓库
git commit -m "commit msg" 带提交注释快捷方式
回滚(本地仓库版本,远程不受影响)
git reset --soft [commitID] 回滚到add操作后状态/本地代码未回退
git reset --mixed [commitID] 回滚到未add操作状态/本地代码未回退 (git reset默认状态)
git reset --hard [commitID] 彻底回滚到指定版本/本地代码也回退
远程仓库(push操作)
推送
git push 推送本地仓库全部代码到远程仓库
git push origin [commid]:[branch] 推送指定commit到指定分支
回退(远程仓库回退版本,会创建一个新的commit)
git revert [commitID] 远程仓库回退指定版本
分支
查看
git branch 查看当前项目所有分支
git diff [branchName] 查看当前分支与指定分支的差异详情
git diff [branchName1] [branchName2] 查看指定两个分支的差异
git diff [beanchName] --stat 显示出所有有差异的文件列表
git diff [branchName] [文件路径] 查看当前分支与指定分支的指定文件的差异(路径可以是文件夹,也可以是具体文件)
切换/创建
git branch [branchName] 创建一个分支(创建分支时会把当前分支内容复制到新分支上)
git checkout [branchName] 切换分支(没有目标分支会切换失败)
git checkout -b [branchName] 切换并创建分支(创建分支时会把当前分支内容复制到新分支上)
拉取
git pull origin [branchName] 拉取指定分支代码
推送
git push origin [branchName] 推送分支到远程仓库
合并
git merge [branchName] 合并指定分支上本地仓库最新的commit的版本
git merge origin/[branchName] 合并指定分支上本地仓库最新push的版本
删除分支步骤
本地删除方式
1.git branch -d dev 删除本地dev分支
2.git push origin -d dev 删除远程分支,并删除本地追踪
网页删除方式
1.网页选择删除分支
2.git branch --delete --remotes <remote>/<branch> 删除本地追踪
标签
查看
git tag 查看当前项目所有标签
创建
git tag -a [TagName] -m 'TagMsg' 打一个标签
git tag -a [TagName] [CommitId] -m 'TagMsg' 给指定版本打一个标签
推送
git push origin [TagName] 推送指定标签到远程仓库
git push origin --tags 推送本地所有标签
删除标签步骤
1.git tag -d [TagName] 删除本地标签
2.git push origin :refs/tags/[TagName] 删除远程仓库标签
拓展
git describe --tags `git rev-list --tags --max-count=1` 输出最新的Tag
0 条评论
下一页