IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发工具 -> 工作后——Git的使用总结 -> 正文阅读

[开发工具]工作后——Git的使用总结

一、Git简介、安装及初步配置

1、版本控制分类
  • 本地版本控制: 每次文件更新,可以对文件做一个快照,或是记录补丁文件。
  • 集中版本控制:所有的版本数据都保存在服务器上,协同开发者从服务器上同步更新或上传自己的修改,一旦服务器损坏,就会丢失所有数据。比如:SVN
  • 分布式版本控制:所有版本信息全部同步到本地的每个用户,这样就可以在本地查看所有版本历史,可以离线在本地提交,只需在连网时push到相应的服务器。当服务器损坏时,只要有一个用户的设备没有问题就可以恢复所有的数据。比如:Git
2、版本控制工具git的作用
  • 版本控制:利用git来开发,可以进行版本回退。
  • 协同开发:多人分模块共同完成一个项目,是每个程序猿的必备技能。

git教程:Git教程

3、Git安装

首先要安装:git for windows(git的命令行版本),也可以使用淘宝镜像进行下载:http://npm.taobao.org/mirrors/git-for-windows/

接着再安装:tortoise git(git的图形界面)

注意:
两个工具安装完毕后, 需要重启电脑才能正确使用.

4、Git初步配置

(1)设置用户名和邮箱
在gitbash命令行下进行配置用户名和邮箱。用户名和邮箱需要与远程仓库一致。

git config --global user.name "Jery"
git config --global user.email "Jerry@qq.com"

注意:

  • 配置文件为.gitconfig
  • 一般可以作为远程仓库的平台有:Gitee、Github、Gitlab等等。

(2)配置SSH公钥
配置了公钥之后你的机器和 github 通信的时候 ,github 就可以通过公钥识别出你是可信赖用户,这样就不需要每次 git 和 github 通信的时候都要输入密码了。同时,也保证了数据传输的安全性。

生成SSH Key:ssh-keygen –t rsa –C "你的邮箱@xx.com"
弹出选项时,一路回车即可。

将生成的公钥信息(/root/.ssh/id_rsa.pub中的文本),添加到远程仓库的公钥中即可:
在这里插入图片描述

5、Git理论

(1) Git本地有四个工作区域:

  • 工作目录(Working Directory):平时存放项目的文件夹

  • 暂存区(Stage) : 暂时存放修改的文件

  • 本地仓库(Repository) :保存了所有版本的数据

  • 远程的git仓库(Remote Directory): 托管代码的服务器

在这里插入图片描述
(2) Git的工作流程:

  • 在工作目录中添加或者修改文件;
  • 将需要进行版本管理的文件放入暂存区(git add .
  • 将暂存区中的文件提交到本地仓库(git commit -m " 描述"
  • 上传到远程仓库(git push
    在这里插入图片描述
    注意:
    git add xx文件名,将某个文件提交到暂存区;
    git add . 将所有未提交的文件提交到暂存区;

二、与远程仓库建立连接

1、先有本地库

先有本地库,后有远程库,需要先将本地库push到远程库。
(1)创建本地仓库
在需要创建仓库的文件夹下输入命令,将当前目录变为仓库。

git init

注意:
创建好后会有一个,git文件,仓库的版本信息都在这个文件里面

(2)与远程仓库建立连接

git remote add origin 远程仓库地址  #和远程仓库建立连接
git remote -v  # 查看当前仓库的连接信息
git remote rm origin # 解除本地和远程的绑定关系

注意:
origin是远程仓库的名字

远程仓库地址如下:
在这里插入图片描述

2、先有远程库

先有远程库,后有本地库,从远程库clone到本地库。
从远程库克隆到本地
git clone 网站上的仓库地址

注意:
如果选择SSH协议,必须将Ubuntu的公钥添加到GitHub上。

三、tortoise git的使用

1、创建仓库并填写仓库信息

创建
2
注意:

  • 选中Initialize,会在创建项目时新建一个Readme文件,用来做项目说明
  • 在gitignore中填写Java可以滤除项目中的一些不必要文件如.class等
2、克隆

在创建好的项目中点击Clone or download,可以看到HTTPS对应的地址,我们可以利用该地址进行clone或者download。
在这里插入图片描述
(1) 复制刚才创建好的项目的链接
(2) 打开指定的需要放置项目的目录
(3) 右击目录, 点击Git Clone
(4) 在弹出的对话框中输入刚才复制的项目链接即可.

项目中的文件下载成功, 会出现绿色图标.
在这里插入图片描述

3、对本地项目文件进行版本管理

(1)提交给git管理
右键项目文件,点击TortoiseGit>>>Add,然后选择需要管理的文件。
在这里插入图片描述
此时文件变为红色感叹号,表示文件已被git管理,但是未提交内容。
5
(2)将修改内容提交到本地
每提交一次, 就是一个版本. 比如开发完某个功能模块, 就可以进行提交. 后续进行版本回退都是以提交的版本为准.
红色叹号文件右键,点击Git Commit -> “master”…
1
此时弹出了一个对话框. 可以在此处看到需要提交哪些文件, 以及每个文件的具体改动情况. 并且需要输入提交日志Message. 描述这次提交的具体改动原因是什么. 这个日志是后续进行版本回退的重要参考依据.

在这里插入图片描述
点击commit完成提交。

注意:

  • 此时只是提交到本地, Github 上还看不到代码变更.

(3)将项目提交到服务器
提交的内容需要同步到服务器上, 才能在Github上看到。 右键需要提交的目录, 点击TortoiseGit->push。
7
此时刷新GitHub页面就可以看到我们提交的目录了。

四、IDEA集成Git

1、基本操作

(1)将git集成进IDEA开发工具
在这里插入图片描述
(2)使用IDEA连接Git远程仓库
在这里插入图片描述
此时idea中自动出现了git相关的操作以及控制面板:
在这里插入图片描述
不推荐使用git操作按钮,我们直接在 terminal面板 进行操作即可(add、commit、push)

git add hello.java       //将hello.java添加到暂存区
git add .  //将所有未暂存的添加到暂存区
git commit -m "hello测试文件"  //将变动提交到本地仓库
git push     //将本地仓库提交到gitHab
2、协同开发——分支管理

(1)新建分支
当前在哪个分支上,新建出来的分支就是基于哪个分支建立的。
在这里插入图片描述
新建的分支commit/push后,会在gitee上显示出来:
在这里插入图片描述
(2)切换分支
在这里插入图片描述
(3)commit/push/历史版本记录:
在这里插入图片描述
(4) 合并分支
Merge:切换到主分支,将主分支的最新变化pull到本地,然后切换回自己的分支进行commit后就可以进行Merge合并操作了。
在这里插入图片描述
左边是自己维护的分支,右边是主分支,中间是最后合并后的结果。红色代表两方都改动了同一片代码,存在冲突;绿色代表新增代码,双方没有冲突;蓝色代表原代码一方有改动。
在这里插入图片描述

五、常用命令

基本查看命令:

git --version         #查看git的版本信息
git config -l         #查看配置
git status [filename] #查看指定文件状态
git status            #查询仓库状态

连接命令

git init                          #创建本地仓库
git remote add origin 远程仓库地址 #和远程仓库建立连接
git remote -v                     #查看当前仓库的连接信息
git remote rm origin              #解除本地和远程的绑定关系
git clone [url]                   #克隆

基本操作

git add 文件名 #将文件添加到暂存区
git add .  #将所有改动的文件添加到暂存区
git commit –m "描述"`#将暂存区提交到本地仓库

版本信息

git log               #查看仓库历史记录
git diff 文件名       #比较文件差异(在git add之前使用)
git reflog           #查看所有版本的commit ID
                     #HEAD{0},HEAD{1}即为版本ID

撤销命令:

git checkout -- 文件名  #撤销工作区的修改
git reset HEAD 文件名 #撤销暂存区的修改
git reset --hard 该版本ID #回退到历史版本
git reset --hard HEAD^  #回退到上个版本

注意:

  • 版本回退,也是以commit为基准的。
  • 上上版本是HEAD^^,也可用HEAD~2表示,以此类推。

分支常用命名:

git branch  # 列出所有本地分支

git branch -r # 列出所有远程分支

git branch -a #列出所有分支

git branch [branch-name]  # 新建一个分支,但依然停留在当前分支

git checkout -b [branch]  # 新建一个分支,并切换到该分支

git checkout branchName   #切换分支

git checkout -f branchName  #强制切换分支

git merge [branch]  # 合并指定分支到当前分支

git branch -d [branch-name] # 删除分支

git push origin --delete [branch-name] # 删除远程分支
  开发工具 最新文章
Postman接口测试之Mock快速入门
ASCII码空格替换查表_最全ASCII码对照表0-2
如何使用 ssh 建立 socks 代理
Typora配合PicGo阿里云图床配置
SoapUI、Jmeter、Postman三种接口测试工具的
github用相对路径显示图片_GitHub 中 readm
Windows编译g2o及其g2o viewer
解决jupyter notebook无法连接/ jupyter连接
Git恢复到之前版本
VScode常用快捷键
上一篇文章      下一篇文章      查看所有文章
加:2021-12-14 16:10:12  更:2021-12-14 16:10:16 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 15:30:30-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码