Git学习笔记

Git学习笔记

关于maven

Maven是一个共享包软件,通过mvn命令可以建立不同的maven风格的项目,通常idea上面有模板

关于Git

诞生于Linux版本控制

Git是一个分布式版本管理系统,一个项目的每个开发者的电脑上都有个完整的版本库

git开始步骤

  1. 进入项目文件夹,git init创建空仓库,目录下增加了一个.git文件

  2. Git add *(文件名),把文件添加到仓库

  3. git commit -m “备注”

git命令

Git status 查看被修改的文件(拿你现在保存的文件或者暂存区中的文件和仓库中的文件对比)

Git diff 查看被修改的具体位置(同上)

Git diff HEAD — 文件名 可以看工作区和版本库里面的最新版本区别

Git log查看提交记录 —petty=oneline有简化版的记录(只显示提交id和提交备注)

git 版本穿梭

Git reset —hard HEAD~1 回退到一个版本前,1表示一个版本前,head表示当前版本

git reset —hard 提交ID ID可以通过shell的输出得到,也可以通过 git reflog 得到

git工作区和暂存区

Git add把文件添加到暂存区,git commit把内容提交到当前分支..git初始化的时候,自动建立了master分支

撤销操作

Git checkout — file 把文件恢复成暂存区或者工作区的内容,优先暂存区

Git reset HEAD file 把文件恢复成工作区的内容,

版本库中删除文件

git rm之后 git commit -m “备注”

远程仓库

本地仓库和远程仓库通过ssh连接.使用ssh加密传输的原因是远程仓库要确认你是你自己.

1,在本地执行ssh-Keygen -t rsa -C “yourEmail” 生成公钥和私钥,都放在用户主目录下的.ssh文件夹中

2,在远程仓库添加你的公钥

最后,git仓库里面所有的信息都能被别人看到并下载,除非交钱.

连接远程仓库并推送

Git remote add origin git@github.com:username/repo.git

Git push -u origin master master是推送本地的master分支,-u是第一次推送,把远程master和本地master关联起来,以后就不用加-u了

git remote rm origin 删除远程库(解除本地和远程的关系)

Git ls-files 列出git仓库中的文件

克隆仓库

git clone git@github.com:username/repo.git

可以通过ssh和http来连接,ssh方便,不用输入密码,且速度更快

版本控制

分支有助于库开发者在不影响使用者的情况下开发库(开发过程中,不完整的库是用不了的,开发完成后一次性推送已完成的库)

创建合并分支

查看分支 git branch

创建分支 git branch name

切换分支 git checkout name 或者 git Switch name

创建并切换分支 git checkout -b name 或者 git switch -c name

合并分支到当前分支 git merge name

删除分支 git branch -d name

以上都是通过fast forward模式合并的

当某个文件不一样的话,会产生合并冲突,这时候要手动解决出现的问题

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

合并分支时,加上--no-ff参数就可以用普通模式合并,合并后的历史有分支,能看出来曾经做过合并,而fast forward合并就看不出来曾经做过合并。 

合并分支时,加上--no-ff参数就可以用普通模式合并,合并后的历史有分支,能看出来曾经做过合并,而fast forward合并就看不出来曾经做过合并

 

BUG

修复bug时,我们会通过创建新的bug分支进行修复,然后合并,最后删除;

当手头工作没有完成时,先把工作现场git stash一下,然后去修复bug,修复后,再git stash pop,回到工作现场;

在master分支上修复的bug,想要合并到当前dev分支,可以用git cherry-pick 命令,把bug提交的修改“复制”到当前分支,避免重复劳动。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值