git 使用

参考
https://git-scm.com/book/zh/v2/Git-%E5%9F%BA%E7%A1%80-%E8%8E%B7%E5%8F%96-Git-%E4%BB%93%E5%BA%93
在这里插入图片描述
文件的状态变化周期

git 基础

忽略文件

.gitignore # https://github.com/github/gitignore

检查当前文件状态、查看已暂存和未暂存的修改

git status
git status -s       #状态简览
git status --short

暂存前后的变化

git diff
git diff --staged     #比对已暂存文件与最后一次提交的文件差异 
git diff --cached     #查看已经暂存起来的变化

跟踪新文件

git add xxx

提交更新

git commit xxx
git commit -m  "xxx"

移除文件

git rm xxx

移动文件、重命名操作

git mv xxx xxxc

查看提交历史

git log
git log -p -2     #显示每次提交所引入的差异(按 补丁 的格式输出),使用 -2 选项来只显示最近的两次提交

git log --stat    #除了显示基本信息之外,还附带了每次提交的变化
git log --pretty=oneline         #oneline 会将每个提交放在一行显示,--pretty 使用不同于默认格式的方式展示提交历史
git log --pretty=format:"%h - %an, %ar : %s"        #输出对后期提取分析格外有用
git log --since=2.weeks          # 限制输出长度 --since 和 --until 这种按照时间作限制的选项很有用

撤消对文件的修改

git checkout -- xxx
git reset HEAD <file> #撤消之前所做的修改

查看远程仓库

git remote
git remote -v        #显示需要读写远程仓库使用的 Git 保存的简写与其对应的 URL
git remote add <shortname> <url> #添加一个新的远程 Git 仓库

推送到远程仓库

 git push origin master

查看某个远程仓库

git remote show origin

远程仓库的重命名与移除

git remote rename xxx xxxc
git remote remove xxx
git remote rm     xxx

git 分支

分支切换

git checkout testing
git log --oneline --decorate --graph --all     #输出提交历史、各个分支的指向以及项目的分支分叉情况
git checkout -b <newbranchname>                #创建新分支的同时切换过去

分支的合并

git merge xxx

删除分支

git branch -d xxx
git branch -D xxx            #强制删除

删除远程分支

git push origin --delete xxx

分支管理

git branch
git branch -v                    #查看每一个分支的最后一次提交
git branch --merged              #查看哪些分支已经合并到当前分支
git branch --no-merged           #查看所有包含未合并工作的分支

拉取

git pull      #会查找当前分支所跟踪的服务器与分支, 从服务器上抓取数据然后尝试合并入那个远程分支。
#git pull 相当于是一个 git fetch 紧接着一个 git merge 命令
git fetch     #服务器上抓取本地没有的数据时,它并不会修改工作目录中的内容

Git 分支 - 远程分支

git remote show <remote>

Git 分支 - 变基

https://git-scm.com/book/zh/v2/Git-%E5%88%86%E6%94%AF-%E5%8F%98%E5%9F%BA

git 补丁

git format-patch -1

git am xxx.patch		# 打补丁
git apply xxx.patch

#git format-patch详解
git format-patch HEAD^    	#打包最近的一个patc,有几个^就打包几个patch的内容;或git format-patch -n
git format-patch -n1 -n2		#打包版本n1与n2之间的patch:
git format-patch xxx				#某次提交以后的所有patch:,xxx是commit名
git format-patch -n xxx    	#某次提交(含)之前的几次提交:,xxx是commit名
git format-patch xxx..xxx 	#某两次提交之间的所有patch:,xxx是commit名
git format-patch xxx --stdout > xxx.patch	# 将所有patch输出到一个指定位置的指定文件

git设置默认vim

git config --global core.editor vim

nano 退出方式
ctrl+x ,输入y

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Yengi

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值