git学习笔记

本笔记只适用于在码云或github上已创建了远程仓库,然后在本地clone,本地创建分支,修改,提交 至远程仓库 的一个快速的流程.具体操作请参考廖学峰git教程

1 git clone 克隆远程仓库

git clone https://gitee.com/xxxxx/xxxx.git

2 cd clone下来的目录

cd xxx

3 进去默认是在主分支(master)上,可以在主分支上操作,可以 创建其他分支并切换到该分支上进行操作

git checkout -b dev  //创建并切换dev分支

4 git branch 可以查看当前分支

git branch  //它会列出所有分支,当前分支前面会标一个*号

5 然后我们可以在该分支上做操作了 比如对readme.txt 做个修改之类的

hello world   //在readme.txt 添了它

6 然后提交

git add readme.txt   //git add告诉Git,把文件添加到仓库
git commit -m 'xxxxx'   //git commit告诉Git,把文件提交到仓库   参数m后面是对本次提交的说明

7 现在分支工作完成了切换到主分支上

git checkout master

8 现在把dev分支的工作成果合并到master分支上

git merge dev  //git merge命令用于合并指定分支到当前分支
// 合并后,再查看readme.txt的内容,就可以看到,和dev分支的最新提交是完全一样的

9 合并完成后,就可以放心地删除dev分支了

 git branch -d dev

10 然后就可以提交到远程仓库了

git push -u origin master  //第一次提交使用该命令
git push origin master  //不是第一次提交使用该命令

11 删除连接

git remote rm origin  //删除远程连接

12 添加远程连接

git remote add origin url   //url 远程地址

13 查看连接

git remote -v 

14.远程仓库同步到本地仓库

git pull --rebase origin master
git push origin dev  // 推送本地分支到远程

至此一个完整的流程就走完了,可以到远程仓库上查看是否有你提交的文件
在学习中也遇到了 多人协作 操作分支 提交到远程仓库的问题 不熟悉者很容易出错,但只要理解了就很简单, 具体细节请看廖雪峰git教程

  1. 显示从最近到最远的提交日志
git log
git log --graph  // 分支合并图

16.版本回退

在Git中,用HEAD表示当前版本,也就是最新的提交1094adb...,上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100

git reset --hard HEAD^  //
git reset --hard 1094a  // 回退到指定版本, 版本号是commit id,可以不用写全
  1. 查看命令历史
git reflog

18.查看状态

git status
  1. 查看工作区和版本库里面最新版本的区别
git diff HEAD -- readme.txt
  1. 工作区和暂存区
git add 前是工作区
git add 后是暂存区
  1. 丢弃工作区的修改
git checkout -- file
eg: git checkout -- readme.txt
  1. 创建并切换到新的dev分支
git switch -c dev
git switch master  // 直接切换到master
  1. 隐藏“工作现场”(bug分支)
git stash
  1. 查看工作现场
git stash list
  1. 恢复工作现场
git stash apply  // 不删除stash里的内容
git stash pop  // 删除stash里的内容
  1. 复制分支
git cherry-pick <commit>
eg: git cherry-pick 4c805e2
  1. 强行删除
git branch -D <name>  // 分支名
eg: git branch -D dev

28.多人协作工作模式

首先,可以试图用git push origin <branch-name>推送自己的修改;
如果推送失败,则因为远程分支比你的本地更新,需要先用git pull试图合并;
如果合并有冲突,则解决冲突,并在本地提交;
没有冲突或者解决掉冲突后,再用git push origin <branch-name>推送就能成功!
如果git pull提示no tracking information,则说明本地分支和远程分支的链接关系没有创建,用命令git branch --set-upstream-to <branch-name> origin/<branch-name>

29.更新

git rebase // 类似于git pull
git pull

30.tag标签,主要用于发布版本管理

git tag  // 默认显示所有标签
git tag -l [标签名]
git tag -n // 查看所有tag和说明
git ls-remote --tags  // 查看远程所有tag
git show 标签名  // 查看标签内容
git tag 标签名  // 创建标签
git tag -a 标签名 -m 'xxxx'  // 创建带注释的标签
git push origin 标签名  // 标签推送到远程
git push origin --tags  // 推送所有标签到远程仓库
git tag -d 标签名  // 删除标签
git push origin --delete 标签名  // 删除远程标签
git checkout -b 分支名 标签名  // 新建分支检出
git checkout 标签名  // 切换标签
git tag -f 新标签名 旧标签名  // 修改标签名
git tag -d 旧标签名  // 删除旧有的标签名

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值