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)新编写代码并添加-提交-推送 【选择强制】推送,如图:在这里插入图片描述

------------------------------------------------------

二、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

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值