git 学习笔记

注意:
Git branch upstream
git remote 查看远程库信息
git remote -v 显示远程库详细的信息
git branch -r 查看远程分支
git branch -vv 查看远程分支与本地分支的对应关

git branch 查看本地的所有分支
推送分支
git push origin dev 将本地dev分支推送到远程
git checkout -b dev origin/dev 新建本地分支并将本地分支与远程分支建立对应关系
git branch -u origin/dev 或 git branch –set-upstream-to origin/dev 将本地当前分支dev与远程分支dev建立对应关系
git branch –unset-upstream 撤销当前分支与远程分支的对应关系
git push origin -d test 删除远程服务器上的test分支
标签操作
git tag v1.0 在此时的commitId下打上v1.0的标签
git tag 获取所有打过的标签
git tag v0.9 6224937 给commitId:6224937打上v0.9的标签
git show v1.0 查看v1.0标签的详细信息
git tag -a v0.1 -m “version 0.1 released” 3628164 创建带说明的标签

git tag -d v1.0 删除v1.0这个标签
git push origin v1.0 push v1.0这个标签到远程服务器
git push origin –tags 一次性将所有的标签push 到远程
删除远程的标签
1.先删除本地的标签
git tag -d v1.0
2.再删除远程的标签
git push origin :refs/tags/v1.0

git checkout v1.0 通过标签切换提交过的版本

版本回退
根据–soft –mixed –hard,会对working tree和index和HEAD进行重置:
git reset –mixed:此为默认方式,不带任何参数的git reset,即时这种方式,它回退到某个版本,只保留源码,回退commit和index信息
git reset –soft:回退到某个版本,只回退了commit的信息,不会恢复到index file一级。如果还要提交,直接commit即可
git reset –hard:彻底回退到某个版本,本地的源码也会变为上一个版本的内容,此命令 慎用!

git stash 保护现场
git stash list 查看保护现场
git stash pop 恢复现场
git stash apply stash@{0} 指定需要恢复的现场

git init git初始化
git status git查看文件提交状态
git add
git commit -m “commit message ”
git diff 查看文件改动状态
git log
git log –pretty=oneline 提交日志
git reset –hard HEAD^ 退回上一个版本
git reset –hard commitId 退回指定的版本
git reflog 记录每一次的git命令
git 名词解释
工作区
版本库
暂存区
master 主分支git默认创建
git add 把文件从工作区加入到暂存区
git commit 把暂存区的所有内容提交到当前分支
git diff HEAD – readme.txt 查看工作区和版本库里面的新版本区别
git checkout – readme.txt
命令git checkout – readme.txt 的意思就是,把readme.txt文件在工作区的修改全部撤销
,这里有两种情况
1.readme.txt自修改后还没有放到暂存取,现在撤销修改就回到和版本库一摸一样的状态。
2.一种是readme.txt已经添加到暂存区后,又作了修改,现在,撤销修改就回到添加到暂存>区后的状态。

git checkout – file命令中的–很重要,没有–,就变成了“切换到另一个分支”的命令,我们在后>面的分支管理中会再次遇到git checkout命令。

$ git reset HEAD readme.txt
Unstaged changes after reset:
M readme.txt
git reset命令既可以回退版本,也可以把暂存区的修改回退到工作区。当我们用HEAD时,表示最新的
版本。

rm xxx 表示只是把工作取的文件删除了,如果xxx文件提交到版本库中,那么工作区中删掉的文件荏>苒可以恢复

git rm xxx
因为使用了git rm test.txt,是同时删除了工作区的test.txt文件,并且将删除的动作提交到了暂存
区。
git checkout – test.txt 表示从暂存区中把test.txt拎出来,覆盖到工作区。但是,此时暂存区也
已经没有了test.txt,是无法还原覆盖到工作区的。
正确的做法是
git checkout HEAD – d1.txt

git checkout HEAD d1.txt
git checkout -b dev 创建dev分支并且切换到dev分支相当于下面两条命令
git branch dev 创建分支
git checkout dev 切换分支

git branch 查看当前分支
git merge dev 在master分支下合并dev分支快速合并

git branch -d dev 删除dev分支
Git用<<<<<<<,=======,>>>>>>>标记出不同分支的内容,我们修改如下后保存

git log –graph –pretty=oneline –abbrev-commit
查看分支合并图

git add . 一次性提交多个文件
git checkout test 如果远程上有该分支,那么将该分支下载到本地并且切换到该分支
git branch -vv

分支开发原则:
如果本地dev分支有修改,则需要先切换到master分支,把本地分支的修改merge回master(git merge dev),然后在master上把合并后的内容push到master上;然后再切换回本地分支,再把master的内容merge回分支,然后就继续在分支开发。

开发流程:

// 查看本地分支
git branch
// 显示本地、服务器所有分支
git branch -a
// 显示本地分支和服务器分支的映射关系
git branch -vv
// 切换分支(和创建分支就差一个-b参数)
git checkout {{branch_name}}
// 创建新分支,新分支的代码来自于当前分支
git checkout -b [分支名]
// push本地分支代码到远端服务器,如果远端服务器没有该分支,将会自动创建;
git push origin [远端分支名]
// pull远端分支代码到本地当前分支(建议使用)
git pull origin master

如果只想用git pull,可能需要建立track关系,则使用
git branch –set-upstream-to=origin/<远端branch_name> <本地branch_name>
输出结果:Branch h5_dev set up to track remote branch h5_dev from origin.

// 合并本地master分支到当前分支,比如当前处于dev分支,则把master上的代码merge到dev分支上
git merge master
// 合并远程master分支到当前分支
git merge origin/master
// 删除本地分支
git checkout {{another_branch}}
git branch -d {{local_branch_name}}
//删除远程分支
git push origin –delete {{branch_name}}

常用命令:
git config –global user.name
git config –global color.status auto
git config –global color.diff auto
git remote -v// 查看远程分支的git路径
git clone git@192.168.53.123/tv.git
git status // 查看当前版本的状态(是否修改)
git add xyz // 添加当前修改的文件到暂存区 or 跟踪新文件(git add .把所有修改的文件add在暂存区)
git commit -m ‘{{update_msg}}’
git rm xxx // 从当前跟踪列表移除文件,并完全删除
git rm -cached xxx// 仅在暂存区删除,保留文件在当前目录,不再跟踪
git mv old_name new_name// 重命名文件
git log
git log -n
git log –stat
git show b4f44fe
git diff

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值