git命令的基本使用

获取项目/创建项目

clone项目

git clone 项目地址

创建项目

## 初始化
git init
## 添加需要跟踪的文件(已暂存状态)
git add 文件名
git add 文件名
## 提交跟踪的文件
git commit -m ‘提交备注’

更新项目

## 检查文件状态
git status
## 修改(已暂存状态)文件后必须要进行git add 重新把文件放在暂存区

## 查看已暂存和未暂存的更新
## 尚未暂存的文件更新了哪些部分
git diff
## 已经暂存起来的文件和上次提交时的快照之间的差异
git diff --staged
## 提交项目
git commit
## 提交时跳过暂存区  Git 就会自动把所有已经跟踪过的文件暂存起来一并提交
git commit -a
## 删除git 中的文件  -f强制删除
git rm 文件名/文件夹名
## 想把文件从 Git 仓库中删除(亦即从暂存区域移除),但仍然希望保留在当前工作目录中
git rm --cached 文件名
## Git 中对文件改名
git mv 文件名 新文件名

查看项目提交历史

## 查看git提交历史
git log
## -p 选项展开显示每次提交的内容差异,用 -2 则仅显示最近的两次更新
git log -p -2
## 仅显示简要的增改行数统计
git log --stat
## --pretty 选项,可以指定使用完全不同于默认格式的方式展示提交历史
git log --pretty=noeline
## format,可以定制要显示的记录格式
git log --pretty=format:"%h - %an,%ar : %s"
## 选项说明
选项	 说明
%H	提交对象(commit)的完整哈希字串
 
%h	提交对象的简短哈希字串
 
%T	树对象(tree)的完整哈希字串
 
%t	树对象的简短哈希字串
 
%P	父对象(parent)的完整哈希字串
 
%p	父对象的简短哈希字串
 
%an	作者(author)的名字
 
%ae	作者的电子邮件地址
 
%ad	作者修订日期(可以用 -date= 选项定制格式)
 
%ar	作者修订日期,按多久以前的方式显示
 
%cn	提交者(committer)的名字
 
%ce	提交者的电子邮件地址
 
%cd	提交日期
 
%cr	提交日期,按多久以前的方式显示
 
%s	提交说明

##--graph 选项,可以看到开头多出一些 ASCII 字符串表示的简单图形,形象地展示了每个提交所在的分支及其分化衍合情况
git log --pretty=format:"%h %s" --graph

git log 选项说明

git log选项 说明
-p 按补丁格式显示每个更新之间的差异。
--stat 显示每次更新的文件修改统计信息。
--shortstat 只显示 --stat 中最后的行数修改添加移除统计。
--name-only 仅在提交信息后显示已修改的文件清单。
--name-status 显示新增、修改、删除的文件清单。
--abbrev-commit 仅显示 SHA-1 的前几个字符,而非所有的 40 个字符。
--relative-date 使用较短的相对时间显示(比如,“2 weeks ago”)。
--graph 显示 ASCII 图形表示的分支合并历史。
--pretty 使用其他格式显示历史提交信息。可用的选项包括 oneline,short,full,fuller 和 format(后跟指定格式)

使用图形化工具查阅提交历史

## 使用gitk命令启动图形化
gitk

撤销操作

## 修改最后一次提交
git commit --amend
## 取消已经暂存的文件
git reset HEAD
## 取消对文件的修改
git checkout -- 文件名
## 

远程仓库的使用

## 查看当前的远程仓库  -v 选项 显示对应的克隆地址
git remote
## 添加一个新的远程仓库
git remote add 仓库名(remote-name) 地址
## 从远程仓库抓取数据
git fetch 仓库名(remote-name)
## 推送数据到远程仓库
git push [remote-name] [branch-name]
## 查看远程仓库信息
git remote show [remote-name]
## 远程仓库的删除和重命名
git remote rename pb paul (pd改成paul)
git remote rm paul(删除paul)
## 列出已有的标签
git tag 
git tag -l 'v1.4.2.*' (列出1.4.2系列的)
## 新建标签
## 一般标签分为轻量级的(lightweight)和含附注的(annotated)
## 含附注的标签
git tag -a (指定标签名字) -m '我是说明'
## 轻量级标签
git tag (标签名)
## 签署标签
## 如果你有自己的私钥,还可以用 GPG 来签署标签
git tag -s (指定标签名字) -m '我是说明'
## 查看标签
git show (标签名称)
## 验证标签
## 可以使用 git tag -v [tag-name] (译注:取 verify 的首字母)的方式验证已经签署的标签。此命令会调用 GPG 来验证签名,所以你需要有签署者的公钥,存放在 keyring 中,才能验证
git tag -v (标签名)
## 后期加注标签 (只要在打标签的时候跟上对应提交对象的校验和(或前几位字符)即可)
git tag -a v1.2 9fceb02
## 分享标签
## 默认情况下,git push 并不会把标签传送到远端服务器上
git push [remote-name] [tagname] (如果要一次推送所有本地新增的标签上去,可以使用 --tags 选项)
git push [remote-name] --tags

分支

## 新建分支
git branch [branch-name]
## 切换分支
git checkout [branch-name]
## 新建分支并切换
git checkout -b [branch-name]
## 合拼分支 (当前分支和branch-name)
git merge [branch-name]
## 删除分支
git branch -d [branch-name]
## 合并分支的时候遇到文件冲突
git mergetool
## 查看分支
git branch    (查看所有的分支)
## 该清单中筛选出你已经(或尚未)与当前分支合并的分支
git branch --merged(--no-merged)


## 推送本地分支
git push (远程仓库名) (分支名)
## 获取远程分支

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值