Git学习一篇就够了(手动狗头)

Git 学习:

       Git是一个免费的,开源的,分布式版本控制系统,可以高效处理小型乃至大型项目。(ps:相反的集中化管理系统代表 SVN)

版本控制指记录不同阶段一个或者若干个文件内容变化,以便将来查询特定版本修订情况的系统。具备回溯特质。

        Git 中的绝大多数操作都只需要访问本地文件和资源,不用连网。但如果用 CVCS 的话,差不多所有操作都需要连接网络。因为 Git 在本地磁盘上就保存着所有当前项目的历史更新,所以处理起来速度飞快。

当需要忽略某些文件时

             一般我们总会有些文件无需纳入 Git 的管理,也不希望它们总出现在未跟踪文件列表。通常都是些自动生成的文件,比如日志文件,或者编译过程中创建的临时文件等。我们可以创建一个名为 .gitignore 的文件,列出要忽略的文件模式。

Git 三种使用结构

      Git 本地结构示意图

       

Git跨团队结构示意图

     

远程仓库即代码托管中心:一般分两类

          第一类  局域网环境下,可以构建Gitlab服务器,适用于公司内项目。

          第二类  外网环境下,可以以GitHub或者Gitee作为托管中心。

      版本控制中分支概念:

版本控制中使用多条线同时推进任务,多条任务线即分支

图解分支

              分支优势:同时有多个分支并行开发,互不影响,提高开发效率。分支若失败,放弃即可,不会对主干造成影响。

Git常用命令:

add     把文件添加到缓存区

commit       把缓存区文件提交到git本地库

git commit -m      “说明文件x         x指提交x到仓库,不加x提交暂存区所有文件

git commit -a -m 说明”         跳过暂存区提交所有文件到仓库

git commit --amned      补交文件,和上次提交算一次提交

status          查看缓存区和本地库的状态

rm         移除文件

rm 文件x       在暂存区移除文件x

git rm 文件x   在工作区删除文件x

git rm --cached 文件      在仓库在删除文件x

mv     重命名

git mv 原来名 新名          把原来名字改为新名字

查看日志简化版三种方式

log 查看日志 日志中 space--下一页 b--上一页 q—退出

git log - -oneLine  /          git log - - pretty-oneline

git reflog 包含了版本号信息

reset - - 参数 索引       前进或倒退版本

git reset --hard ,本地库指针移动时,重置工作区,重置暂存区

git reset --hard 文件x   把提交到暂存区的x撤销到已修改为保存到暂存区状态

git reset --mixed,本地库移动时,重置暂存区,工作区不变

git reset --soft, 本地库移动时,工作区和暂存区都不动

diff 比较工作区,暂存区,本地库文件区别,两种方式

git diff 文件名 比较工作区和暂存区差异

git diff -cached      比较已暂存文件和上次比较文件差异

git diff HEAD 文件名或者索引 比较缓存区和本地库区别

分支相关命令

git branch -v          查看分支

git switch -c 分支名x       创建分支

git checkout -b 分支名x   创建分支

git branch 分支名x          创建分支

git checkout 分支名x       切换到x分支

git switch  分支名x           创建分支

git merge 分支名x      合并分支x

远程库相关命令

git remote -v 查看远程引用别名

git remote add 别名x 远程http链接url       url远程引用保存为x

git push 别名x 分支b      把分支b上传到x

git clone 链接url        把远程仓库克隆到本地

git clone -b 分支 链接url        把远程仓库某分支克隆到本地

git fetch 远程库m 分支x      抓取远程库m上分支x,本地工作区并没有更新,下载后可用merge更新,如 git merge origin\master  和为pull操作

git pull 远程库m 分支x        加载远程库m上分支x到工作区

git pull 远程库url 分支x  --allow-unrelated-histories 把远程库无关联的项目加载到

如何解决开发中团队提交冲突:

  1. 团队开发的时候避免在一个文件中改代码

     2.在进行修改一个文件之前,首先进行pull拉下来操作,在基础上再push

本地git

生成ssh密匙:

主目录中:执行git命令

ssh-keygen -t rsa -C 邮箱x    邮箱是github注册时邮箱

记录一下在使用IDEA产生的错误:

问题描述:在使用Git时无法正常commit和push

产生原因:在发送时创作者信息少填或填错,如图

解决方法:没有用户添加用户信息,有用户的选择 完整信息或者留空自动选取默认创作者

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值