git 官方文档学习笔记

根据git官方网站下载的文档progit.pdf 学习的笔记

git完整笔记

git config --list 检查git配置

第一步安装git时,先配置用户名和邮箱

git config --global user.name "example"
git config --global user.email johndoe@example.com


配置默认编辑器,不配置的话使用系统默认的编辑器
git config --global core.editor vim 

git init 初始化一个git 仓库

git add 向暂存区添加文件
git commit -m "xxx" 提交到本地
git branch dev 新建分支           \\\  git checkout -B dev 新建并切换到dev
git checkout dev 切换到分支dev    ///
git reset --hard HEAD^ 回退到上一个提交

git status -s 简洁查看status

git fetch --all 刷新所有的分支

忽略文件的配置
忽略所有.a文件
*.a
要跟踪lib.a,即使您忽略了上面的.a文件
!lib.a
只忽略当前目录的TODO
/TODO
忽略所有目录的build 目录
build/
忽略doc目录下的所有的子目录的.pdf文件
doc/**/*.pdf

告诉git忽略对已经纳入版本管理的文件 .classpath 的修改,git 会一直忽略此文件直到重新告诉 git 可以再次跟踪此文件
git update-index --assume-unchanged .classpath

告诉 git 恢复跟踪 
git update-index --no-assume-unchanged .classpath

要停止跟踪当前跟踪的文件,可以使用git rm——cached
git rm --cached

git diff --cached === git diff staged 查看已经添加到暂存区的修改
git diff --check 设别可能的空格错误
git log master..origin/master 查看远程分支比本地分支多出的log提交

git commit -v 提交时可以查看修改了什么内容

直接添加并提交所有文件(慎用--避免添加进不必要的文件)
git commit -a -m "xxxxxx"

该命令删除log/目录中所有扩展名为.log的文件。或者,你可以这样做:git rm \*~  此命令删除名称以~结尾的所有文件
git rm log/\*.log

在git中重命名文件使用 
git mv file_from file_to 相当于 mv file_from file_to + git rm file_from + git add file_to

git log -p -n 显示最顶部的n个日志的提交信息和修改

git lg --stat  查看日志都修改了哪些文件

指定-v,它会显示Git存储的url,以便在读写远程文件时使用:
git remote -v 

git remote rename pb paul 远程重命名
git remote remove paul 删除远程

================
注:serverfix是分支名,不是命令
================

git tag -a v1.4 -m "my version 1.4" git 添加注释标签
git tag -d v1.4-lw 删除标签
git push origin --delete <tagname> 删除远程标签
git push origin --delete serverfix 删除远程分支
git tag v1.4-lw 创建轻量级标签 不需要添加任何-a -s  git show  v1.4-lw  不会显示额外的标签信息,只会看到git提交
git push origin v1.5 只推送一个标签
git push origin --tags 向服务器推送所有的标签

git push origin serverfix >>向远程推送分支
git push origin 本地:远程 >>向远程推送分支且远程分支名和本地分支名可以不相同

git merge origin/serverfix 合并远程分支到当前分支
git checkout -b serverfix origin/serverfix 从远程分支切出一个分支到本地 ==》git checkout -b 本地分支名 远程名/远程分支名

git branch -u origin/serverfix 重新设置上游分支即本地分支所关联的远程分支

git clone --bare my_project my_project.git 克隆储存库已创建新的裸储存库

git archive master --prefix='project/' | gzip > xxx.tar.gz 将master分支的代码 压缩成一个不带git仓库的压缩包
git archive master --prefix='project/' --format=zip > xxx..zip 同上一样,只不过是zip格式的压缩包

git reflog git查看本地提交的临时历史记录,不会查看其他人的

git stash 隐藏到堆栈中
git stash list 查看堆栈隐藏列表
git stash apply 应用列表中最新的隐藏
git stash apply stash@{2} 应用列表中第三个旧的隐藏
git stash drop stash@{0} 删除列表中的第一个隐藏


git grep xxx git查找xxx -n 行号 -c 文件中的数量
git commit --amend 更改最后一次提交
git commit --amend --no-edit 更改最后一次提交但是不编辑提交信息

设置git服务器

参考之前的文章

深入学习配置repo管理多个git 可以查看文章Linux 服务器配置repo管理多个git
 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值