Git——远程管理版本操作(Tortoise(小乌龟)图形化操作、git命令行操作)
一、Tortoise 图像化操作:
1.克隆项目(即从github仓库拉取项目文件):
2.暂存区:
添加到暂存区:
(1)新建一个文件 (2)右键选择子选项 ->【添加】(3)勾选为被控制文件 即,新加进入的文件
3.从暂存区还原:鼠标右键子菜单【还原】
4.提交(提交代码):
(1)右键选择=>Git提交"master"
(2)输入提交信息(版本修改提示信息),点击提交
5.提交回退(在上传项目错误后,可以重新回退覆盖,注意:不能单纯回退,需要重新提交更新文件,相当于覆盖功能,同时提交次数不改变)
时光倒回(回到上一个版本)进行提交
(1)右键=>查看【日志】
(2)找到上一个版本
(3)点击右键 -> 【重置"master"到这个版本】
(4)选择重置类型【Hard重置工作区和索引】
1.版本信息和代码都能退回
6.推送
推送到远程服务器:
(1).右键 => 子菜单 中的推送
(2).保证其他URL有地址,该地址和推/克隆的地址一样
(3).点击推送,输入用户名和密码
7.覆盖远程提交(针对第5点提交回退)
(1)右键 -> 查看【日志】
(2)找到上一个版本
(3)点击右键 -> 【重置"master"到这个版本】
(4)选择重置类型【Hard重置工作区和索引】(前四部同上)
(5)新编写代码并添加-提交-推送 【选择强制】推送,如图:![](/assets/blank.gif)
------------------------------------------------------
二、git命令行:
1.拉取代码(克隆)
git clone “项目网址” 项目文件夹名称
2.拉取代码:
1.创建空版本库 git init (项目文件夹下生成.git文件夹)
2.拉取代码:git pull 地址 分支名(mastetr)
3.添加到暂存区:
1.新建一个文件(touch、mkdir)
2.打开Git bash
3.输入git add .
4.查看状态 git status
4.从暂存区还原(相对于上一步)
git reset HEAD
5. 提交
1.输入命令 git commit -m "提交信息"
2.查看提交日志git log
6.提交回退:
1.查看提交日志,找到上一个版本的id :(git log)
2. Git reset --hard 【id】
7.推送(推送到远程服务器):
使用命令:git push 地址 分支
注意:此时可能需要输入密码用户名(gitee、github)可以不用每次设置用户名密码(两种方法)
方法一:适用于每一个项目文件夹下(即更改项目文件夹,需要重新设置):
命令行输入:git config --global credential.helper store
方法二:直接设置本地凭据即可(前提要先命令行输入上一方法的命令
):
(1)找到【凭据管理器】:
(2)找到【windows 凭据】:
点击【添加普通凭据】(gitee,github网址如下)
(3)输入gitee、github账号密码即可;
(4)下一次拉取或者更新github项目则不需要密码
8. 覆盖远程提交
(1)查看之前版本id git log
(2)回到之前版本 git reset --hard id
(3)添加新文件(touch、mkdir)
(4)执行正常添加-提交-推送:【强制推送】 git push 地址 分支 --force
9.分支的概念和HEAD(当前指针)
10. 分支操作:
参考链接:https://www.jianshu.com/p/4c1d3b741b19
背景: 在多人协同开发中,我们经常会遇到这样的问题:A在本地开发完成后,将代码推送到远程,这时候B的本地代码的版本就低于远程代码的版本,这时候B该如何从远程拉取最新的代码,并与自己的本地代码合并呢?
(1)查看远程仓库:
git remote -v
(2)比如 在步骤一中,我们查看到远程有一个叫origin的仓库,我们可以使用如下命令从origin远程仓库获取最新版本的代码
git fetch origin master:temp
上面代码的意思是:从远程的origin仓库的master分支下载到本地master并新建一个temp分支
注意:不建议使用pull拉取最新代码,因为pull拉取下来后会自动和本地分支合并
获取最新版本 有两种 拉取 和 获取 pull 和 fetch
git pull 从远程拉取最新版本 到本地 自动合并 merge git pull origin master
git fetch 从远程获取最新版本 到本地 不会自动合并 merge git fetch origin master git log -p master …/origin/master git merge orgin/master
实际使用中 使用git fetch 更安全 在merge之前可以看清楚 更新情况 再决定是否合并
(3)查看temp分支与本地原有分支的不同
git diff temp
(4)将temp分支和本地的master分支合并
git merge temp
现在,B的本地代码已经和远程仓库处于同一个版本了,于是B可以开心coding了。
(5)切换回master主分支,再提交到远端即可:
最后再提一下,上面的步骤中我们创建了temp分支,如果想要删除temp分支,也是可以的,命令如下:
git branch -d temp
(6)创建远程新分支,并将本地分支推送到远程:
git push origin 远程分知名:本地分支名
(7)删除远程分支:
将上一步远程分知名置空即可
git push origin :本地分知名
(8)查看远程和本地所有分支:
git branch -a (clone下来的文件夹gitbash才能看见远程分支)
11. 添加新的远程遥控器(origin)
git remote add origin https://…
更改现有远程存储库URL:git remote set-url origin git@github.com:User/UserRepo.git
查看现有遥控器:git remote -v
Git——远程管理版本操作(Tortoise(小乌龟)图形化操作、git命令行操作)相关推荐
- 服务器系统命令行切换图形化,ubuntu16.04命令行模式和图形界面互相切换的两种解决办法...
在ubuntu中,我们可以有两种工作模式,一种是纯字符的命令行模式,这种界面没有那么好操作,而且对命令要求比较熟悉,比较适合专业人士使用,另一种模式就是图形化界面,这个相信大家都很熟悉了,我们常用的w ...
- 如何让树莓派启动实现图形化界面和命令行模式的切换从而解决两个光标的问题
前言:由于之前烧录到树莓派的镜像文件是图形化界面的,当我把QT工程交叉编译后的可执行文件在树莓派上运行时.有两个界面,重点是有两个光标,会导致当使用触摸屏时会有两个响应,使屏幕错乱.此时想到了两个解决 ...
- git修改服务器的命令行,Git版本控制工具安装及命令行操作
很多小伙伴不知道如何来安装Git版本控制工具,对于命令操作比较陌生.本文做了一个详细的文档,希望对大家有所帮助. 1.git 是什么一个分布式版本控制系统,和SVN类似,但远比SVN强大的一个版本控制 ...
- Git 简介和命令行操作
Git 简介 官网地址:https://git-scm.com/ 3Git 的优势 大部分操作在本地完成,不需要联网 完整性保证 尽可能添加数据而不是删除或修改数据 分支操作非常快捷流 ...
- 命令行操作svn和git和git
前几天在写代码的时候电脑突然坏掉,老大交代的任务没完成,非常痛恨自己用svn或者git保存代码,相信很多程序员遇到过,硬盘坏掉,存在硬盘中的代码丢失,无法找回的问题,svn和git可谓程序员界的福音, ...
- SSH命令行连接oracle,命令行操作windows远程登录账户
windows远程登录对于管理windows服务器十分有用.但是默认情况下,对于远程登录用户资源是有限制的.有时出现无法远程服务器的情况,这导致需要人工操作服务器.为了避免这个问题,我们在服务器安装o ...
- centos图形化磁盘文件管理_CentOS7磁盘管理-分区扩容-使用gparted图形化工具或系统命令...
centOS7磁盘管理-分区扩容-使用gparted图形化工具或系统命令 @了解centos下磁盘结构 无标题.png 解释 PE - 物理块(Physical Extent) 硬盘上有很多实际物理存 ...
- Hive 本地模式,远程模式模式的搭建、命令行操作、Hive JDBC操作
追风赶月莫停留,平芜尽处是春山. 文章目录 追风赶月莫停留,平芜尽处是春山. 环境 下载安装包,解压到合适位置: Hive 本地模式的搭建 一.配置相关的文件: 二.安装并配置MySQL 三.配置Hi ...
- vue3 项目创建(UI图形化界面方式,可视化操作Vue项目,vue ui)
vue3 项目创建 (UI图形化界面方式,可视化操作Vue项目,vue ui) 目录 一.图形化界面方式搭建vue3 项目前提条件 1.检查node 和 @vue/cli 版本信息 2.升级你的 No ...
最新文章
- sed linux 命令
- Using NUnit with Visual Studio 2005 Express Editions
- 一次愉快的 bug 修复经历
- arcgis-“一个或多个已经添加图层的范围与关联空间参考不一致”“Arcmap不能绘制一个或者多个图层”
- 第五章 逻辑回归模型在评分卡开发中的应用
- 互联网金融投放获客优化的讨论(新用户引导流程)
- mysql 用户已设置密码,但登录可以不填密码
- jenkins 对 maven对应的 jvm 配置参数
- 新风系统风速推荐表_新风系统风速标准及与噪音的关系
- 单片机课程设计——《基于AT89S52单片机和DS1302时钟芯片的电子时钟(可蓝牙校准)》...
- AS3.1.2配置gradle阿里云镜像(可用)
- WM8978音频模块梳理
- 路由器技术彻底解决路由器IP地址冲突问题
- 最赚钱H5游戏《大天使之剑H5》公测24天流水破亿!
- 华为防火墙的基本安全策略
- 死亡公司公墓数据(IT桔子)
- idea完美激活 转载
- ERP系统里的BOM展开函数
- iOS中允许后台应用程序刷新在开发中的注意事项
- 数据库的文件服务器配置,服务器数据库文件配置
热门文章
- Android 原生控件ViewFlipper实现淘宝头条垂直滚动广告条
- Python星星代码
- html textarea滚动条样式设置
- CocoStudio的使用
- 【面试题】:火车运煤问题
- VUE项目--nprogress进度条
- 父与子python 百度云_《父与子的编程之旅:与小卡特一起学Python第2版》pdf电子书百度网盘下载地址...
- 人物专访 | Artifex Studio合成师兼统筹小姐姐不一样的经历
- Linux虚拟机启用时,出现:‘VMware虚拟机中出现无法将(系统文件路径)文件当做CD-ROM映像进行连接。
- 前端框架——BootStrap学习