Git学习与码云实战

一、Git安装

概述:

Git是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理,是目前使用范围最广的版本管理工具。

下载安装:

下载地址:https://git-scm.com/

下载后傻瓜式一键安装,建议安装在英文目录下

右击桌面,能够看到如下Git选项

  • GUI为用户界面模式
  • Bash为命令行模式

系统配置

由于git是分布式管理工具,需要输入用户名和邮箱作为标识,因此,我们按右键打开Git Bash 命令框

在命令行输入下列的命令:

git config --global user.name "你自己的名字,可以为中文"

git config --global user.email "邮箱,建议QQ邮箱,方便记忆"

生成SSH公钥,许多 Git 服务器都使用 SSH 公钥进行认证,所以我们也需要配置该公钥

# 输入如下命令,三次回车即可生成 ssh key
ssh-keygen -t rsa -C "email@example.com,邮箱"

常用命令

命令 备注
git status 查看仓库的改变情况,会有相关的提示操作出现
git add 直接添加所有改动的文件
git commit -m "note" 确定生成本地的版本,note是版本特点说明
git push 将改动上传到github,若没有指定分支,则需要使用git push origin master
git log 查看版本更新情况
git reset --hard x 回退到某个本地版本,x为git log 中出现的hash值的前七位
git clean --xf 清除所有未提交文件
git init 在目录中创建新的Git仓库

Git区域介绍

1.git有3个区域

  • 工作区(working directory):项目的根目录,不包括.git在内的其他文件
  • 暂存区(stage area):是一个看不见的区域,git add命令就是将文件添加到该区域,git add .表示添加所有,git status命令可以查看当前暂存区的文件,文件标识改了,(没有加号重启一下)
  • 本地仓库(repository):指在工作目录下创建的一个.git目录,这是一个隐藏目录。git commit -m "日志"名可以将暂存区的代码提交到本地仓库。git push -u origin master就是将本地仓库的代码推送到远程仓库、

2、git文件的3种状态(尝试查看文件图标变化)

  • 已修改(modified),存在于工作区,文件修改后的状态
  • 已暂存(staged),存在于暂存区,采用git add命令后的状态
  • 已提交(committed),存在于本地仓库,采用git commit命令后的状态

码云加Git配置仓库

为什么要这么做?

若需要将本地仓库的代码同步更新到远程托管服务器,则需要与远程服务器建立通信授权连接,最常见的就是利用上述所生成的sshkey进行配置。

常见的托管平台有GitHub,GitLab(开源),码云,企业中也用该产品搭建企业的代码管理平台。

2、前置条件

  • 本地git已安装并配置了Git用户参数,本地已生成了SSHKey
  • 注册码云平台账号,建议采用QQ邮箱进行注册,方便记忆和密码找回

3、秘钥配置

  • 注册好码云后,进入设置中心,再点击SSH公钥

  • 在本机磁盘目录中,找到当前用户下的.ssh目录,并编辑其中的.pub结尾的文件,以记事本打开(或者你用其他的编辑器打开都可以),复制里面的内容

  • 将内容拷贝至码云中,拷贝后,标题能够自动识别,也可以自行修改

  • 打开Git Bash终端输入如下命令进行连接测试

    $ ssh -T git@gitee.com

  • 使用命令同步代码

    代码同步有3个步骤:add、commit、push

    1. 在本地磁盘中找一个目录,用于初始化本地仓库存放项目代码

      student是我放入的工程文件,不能为空文件夹

    2. 使用git init 命令创建一个本地仓库.git(隐藏文件夹),右键打开Git bash命令窗口

    3. 使用git add 文件目录 命令将项目文件添加到git暂存区中,可以使用git status命令可以查看当前暂存区的文件

    4. 使用git commit -m "注释" 命令将暂存区的文件上传到本地仓库

    5. 在码云上创建一个仓库,用来存放待上传的项目

6.将本地库与远程库关联

关联命令:git remote add origin +复制的ssh地址

7.远程仓库与本地仓库合并

这时候不着急推,先将远程仓库的文件同步一次到本地,否则直接推会报错

表示从远程master分支拉取代码与本地仓库进行合并,此时一定要保证本地的文件是绿色的

git pull --rebase origin master

此时你会发现本地代码多了几个文件

8.将本地代码推送到远程分支

命令 git push -u origin master

9.刷新码云的远程仓库,能够看到如下结构

10.后续代码改动

依次执行以下命令(远程仓库没有发生改动的情况),如果远程分支的代码已经被别人修改,需要先拉取代码,再提交,这个过程稍微复杂一点,若存在冲突则涉及到同一行代码的合并

执行add

# 将已改动的文件添加到暂存区
git add student/

执行commit

# 将暂存区的代码提交到本地仓库
git commit -m "第二次提交"

执行push

# 将本地仓库的所有更改推送到远程服务器的master分支
git push origin master(完整写法,远程分支若不存在则会被创建)
或者
git push origin(远程仓库与本地仓库存在分支最终关系的写法)
或者
git push(远程仓库只有一个分支,最简单的写法)

IDEA+Git

  1. 在IDEA中设置Git,在File-->Setting-->Version Control-->Git-->Path to Git executable选择你的git安装后的git.exe文件,然后点击Test,测试是否设置成功

  2. 配置码云(gitee)

    插件安装

由于IDEA没有直接码云,所以需要选择安装Gitee插件,找到Plugins,搜索Gitee,安装后重启

登录信息配置,输入邮箱和密码

直接将本项目同步至码云(新建仓库)

代码提交或更新

在项目根目录上右击,选择Git->Commit Directory进行提交

现在push到远程仓库

Git到此结束,至于可视化工具GUI,装好了但是不熟,以后有机会再补。

Git学习与码云实战的更多相关文章

  1. 使用Git Bash在码云上上传和下载代码

    前提是在码云上已经新建一个空的项目 1.新建一个目录,存放下载下来的项目,我在D盘新建了一个"gitspace"文件夹,用来存放下载下来的项目 2.进入刚刚新建的文件夹,即进入&q ...

  2. Git的使用--码云

    Git的使用--码云 进入码云官网:https://gitee.com/ 注册or登录账号进入gitee页面(页面结构大同小异). 点击右上角加号--新建仓库,用于存放项目代码 创建项目需要注意的选项 ...

  3. 学习将码云账号和git连接,并且创建一个项目

    一顿操作猛如虎,哈哈 参考网址:https://git-scm.com/book/zh/v1/%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%B8%8A%E7%9A%84-Git-%E7 ...

  4. idea和Webstorm上使用git和github,码云

    由于之前一直使用svn,现在项目使用git,顾根据网上找的学习资料,自己梳理了下,收获蛮多,这里做个记录,如果能帮助到您那是最好不过的. 1.大致步骤 使用工具:idea,github,码云 webs ...

  5. GIT 版本管理-github&码云

    GIT 是什么 git是一个用于帮助用户实现版本控制的软件. 把本地代码push到远程服务器 git add.git commitpush code to remove machine.git pus ...

  6. vdscode连接git服务器(以码云为例)

    准备工作:先下载并安装git客户端 1.在码云或者github上新建项目,获得新建项目的地址,得到一个类似:https://gitee.com/zhangshitongsky/vueTest.git ...

  7. 把git仓库从码云迁到github,及git常用命令

    前言 刚开始建仓库的时候,因为网络的原因选择了国内的码云.后来又想换成github,毕竟平时github使用率比较高. 替换远程仓库地址方式如下: git remote set-url origin ...

  8. 第一次Git使用以及码云(Gitee)

    下载安装Git,官网下载地址https://git-scm.com/downloads,我用的是Win10版,下载好后一路默认安装,安装时会给你自动添加环境变量,完成后打开cmd,输入git --ve ...

  9. git版本控制入门--码云

    1.下载git:https://git-scm.com/download   2.安装过程一直点下一步即可.   3.进入刚创建的文件夹     4.在此时登录码云,创建项目.项目名称最好与文件夹名称 ...

随机推荐

  1. [C++STL] 队列 queue 的入门

    队列结构 概念: 队列(queue):和栈相似,也是一种特殊的线性表.和栈不同的是,队列只允许在表的一端进行插入操作,而在另一端进行删除操作.一般来说,进行插入操作的一端称为队尾,进行删除操作的一端称 ...

  2. Property or method "xxx" is not defined on the instance but referenced during render

    是xxx中的data写成date了,因此报错. 这个错误属于粗心

  3. vue3常见问题及解决方案(四)父组件切换行,然后子组件切换tab,子组件内的数据不刷新

    问题描述 父组件切换行,然后子组件切换tab,子组件内的数据不刷新. 例如父组件为订单,子组件为订单相关商品和相关客户,商品和客户使用tab选项卡组织. 当tab显示商品页时,切换订单,商品页内容跟着 ...

  4. 在Winform开发中,使用Async-Awati异步任务处理代替BackgroundWorker

    在Winform开发中有时候我们为了不影响主UI线程的处理,以前我们使用后台线程BackgroundWorker来处理一些任务操作,不过随着异步处理提供的便利性,我们可以使用Async-Awati异步 ...

  5. 隐私计算FATE-模型训练

    一.说明 本文分享基于 Fate 自带的测试样例,进行 纵向逻辑回归 算法的模型训练,并且通过 FATE Board 可视化查看结果. 本文的内容为基于 <隐私计算FATE-概念与单机部署指南& ...

  6. npm发布包以及更新包还有需要注意的几点问题(这里以发布vue插件为例)

    前言 在此之前,你需要去npm官网注册一个属于自己的账号,记住自己的账户名以及密码.邮箱,后面会用的到.第一步,安装webpack简易框架 vue init webpack-simple marque ...

  7. go Cobra命令行工具入门

    简介 Github:https://github.com/spf13/cobra Star:26.5K   Cobra是一个用Go语言实现的命令行工具.并且现在正在被很多项目使用,例如:Kuberne ...

  8. centos 7安装zabbix

    1 升级系统组件到最新版本 yum -y update 2 关闭 SELinux sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" / ...

  9. 我看谁还说程序员不会P图?拜托~4行python代码就够~

    我们平时使用一些图像处理软件时,经常会看到其对图像的亮度.对比度.色度或者锐度进行调整.你是不是觉得这种技术的底层实现很高大上? 其实最基础的实现原理,用 Python 实现只需要几行代码,学会后你也 ...

  10. 从零开始实现lmax-Disruptor队列(四)多线程生产者MultiProducerSequencer原理解析

    MyDisruptor V4版本介绍 在v3版本的MyDisruptor实现多线程消费者后.按照计划,v4版本的MyDisruptor需要支持线程安全的多线程生产者功能. 由于该文属于系列博客的一部分 ...