git基础知识 及gitee使用实例

git基础笔记

强烈推荐git简易指南,看完这个git直接入门

  • git 版本控制,可以控制提交的版本,自动合并代码
  • 根据B站 Mr_Eve的教程 学习,感谢up主的无私奉献!

安装git和基础设置

  • 可以在官网上直接下载,选择Windows版安装
  • 安装完成后,在开始菜单会有一个Git Bash (如果找不到可以在开始菜单搜索)打开他来进行下面的设置
  • 执行git config --global uesr.name"NAME" 其中NAME换成自己的昵称
  • 执行git config --global user.email"XXX@XXX.com" 里面换成自己的邮箱

git文件的四种状态

  • git文件一共包括四种状态
    • Untracked(未跟踪):新建或者导入这个文件,但是还没有进行提交或者进入暂存区 (文件名为红色)
    • Unmodified(未修改):版本库中的内容和文件内容完全一致 (例如 commit 提交后的文件,文件名为绿色)
    • Modified(已修改):已经加入这个仓库的文件又被修改 (文件名又会变成红色)
    • Staged(已暂存):进行完add操作之后,进入暂存区的文件 (这时用status查询文件名为绿色)

新建一个仓库

  • 找到一个你想要作为仓库的地方,进入该文件夹右键,这时应该可以看到一个Git Bash Here这个按钮 (或者你也可以在原来的Git Bash里转到这个目录)
  • 执行git init 命令,这时应该在这个目录下新建了一个.git 的文件夹
    • 如果看不到的话是因为没有打开显示隐藏文件夹,在文件浏览器的上面有一个查看的栏里有一个隐藏的项目,把他选上就可以看到.git隐藏文件夹

提交变更

  • 命令git status可以查看仓库的当前状态信息

  • 使用命令git add <filename>把文件加入暂存区

    • 当你想把所有文件都加入的时候,可以使用git add .来实现
    • 红色的文件表示有新的变更,需要使用git add来使这个文件变绿
  • 如果本次又不想提交这个文件,可以使用git reset <fliename>来取消提交这个文件

  • 提交变更命令:git commit -m <message>

    • message:对这次提交的描述
    • git commit只提交那些变绿的文件
  • 查看日志命令:git log 来查看仓库之前的修改

  • 每次commit都会生成一个哈希值,可以认为是这次提交的身份证 (哈希值只要前七位就可以确定是哪个commit了)

git自定义命令

  • git alias可以修改命令名字
  • 例如git config --global alias.st status命令就把git status 简写为 git st
    • global代表对当前用户起作用,如果不加 global 代表只对当前仓库起作用
  • 或者直接去 users (就是C盘的用户目录下) 下的 .gitconfig 文件里修改
    • 修改 [alias] 下面就可以修改简写

回退命令

  • 回退命令:git reset commitID,commitID就是之前提交命令生成的哈希值

    • 假如你从第六次返回第五次,第六次的log就会被删除
    • 假如又想回到第六次的版本,该怎么操作呢
  • 查看所有操作记录命令:git reflog

    • 然后在里面找到第六次提交的ID,再使用git reset命令,就又回到第六次了
  • 回退命令的参数:

    • --hard:你的本地文件和暂存区的文件都会被清空,返回你要退到的状态
    • --mixed默认值,暂存区会被清空,但是你的文件修改的内容不会被清空
    • --soft:暂存区不会被清空,文件修改的内容也不会被清空,并且两者造成的差异会放进暂存区
  • 推荐Git Reset 三种模式这篇博文,讲回退命令十分详细,感谢博主!

创建分支

  • 创建新分支:git checkout -b <name> <template>

    • name:分支的名字
    • template:以哪个分支为模板 (不填以当前分支为模板)
    • 相当于复制了一份,复制完的两个分支之间就没有关系了
  • 如果分支来自远端仓库,创建新分支格式为git checkout -b <name> origin <template>

  • 切换分支命令git checkout <name>

  • 查看分支命令:git branch

    • 高亮的条目表示当前所处分支
    • 只展示本地的branch

合并分支

  • 合并分支:git merge <branchName>
    • 一个主分支分成两个子分支,在编码完成后再用主分支分别合并两个子分支
    • 合并分支时可能出现代码冲突错误,可以手动修改错误,也可以使用 IDE 修改错误

远程仓库

  • 用GitHub来模拟远程仓库
  1. 在GitHub上找到仓库的下载链接

  2. 使用git clone 网址命令就可以将仓库下载到本地

  • 网址的位置:
    网址
  1. 使用git push --set-upstream origin 本地库名命令把本地的仓库
  • –setup-stream 指设置上流分支

  • origin 指远端仓库

  • 这时就可以将本地 push 推送到远端

  • get fetch命令:获取远程仓库的最新分支,但不自动合并 (merge)

  • 如果分支本身来自远程仓库就可以不设置上流分支

  • git pull命令,等同于先fetch再自动merge

    • 使用场景:程序员A提交了代码到远端仓库,程序员B想要更新本地的代码,使用 git pull 命令

实例:gitee示例

  • 这里我使用 gitee,首先 gitee 是国内的网站,支持中文,并且私有的仓库是免费的(虽然现在GitHub严重获利,私有仓库也免费了)
  • 首先,新建一个项目,然后找到项目的http地址
    在这里插入图片描述
  • 然后在本地的git bash里cd到你想要保存这个项目的目录执行git clone http地址
  • 这时这个目录下就应该出现这个项目的目录了
  • 然后就可以执行add commit等操作
  • 当你commit后其实文件并没有推送到远端仓库,这时你需要执行git push origin master其中的master可以换成你想要推送的远端分支

变基 (rebase)

  • 命令格式git rebase master:在branch下执行这个语句

  • 例如两个分支,一个 master ,一个分支 a ,a 再新基础上有了两次提交 (commit) a1,a2,master 也有了一次提交 m1 ,使用 rebase 就可以实现把 master 分支的提交变成 original --> m1 --> a1 --> a2

    • 如果合并时出现冲突,想要继续时使用 git rebase --continue命令继续
  • 推荐变基的这篇文章 rebase — Git中一个强大的忍者 讲解十分详细,感谢作者无私奉献!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值