Git版本控制管理

日志记录

查看日志

 git log

参数:

  • graph : 查看分支合并图
  • oneline : 标记把每一个提交压缩到了一行中

获取执行过的命令

git reflog

查看每一次提交记录

git log --oneline

比较文件差异

比较工作文件区和暂存区的文件差异

 git diff

比较暂存区文件和版本库文件的差异

git diff --cached

注意:

 --- :标记原始文件
 +++ :标记新文件
 @@ :两个不同文件版本的上下文行号。
  -: 原始文件删除改行
  + :原始文件增加一行

还原文件

对于恢复修改的文件,就是将文件从仓库中拉到本地工作区,即仓库区 ----> 暂存区 ----> 工作区。
在这里插入图片描述
在这里插入图片描述

git远程仓库

在这里插入图片描述

添加远程仓库

git remote add <shortname><url>
  • shortname :远程的名字(可以随意取名)
  • url : 远程仓库地址

查看远程仓库

 git remote

克隆远程仓库

如果你想获得一份已经存在了的Git仓库的拷贝,这时就要用到git clone命令。Git克隆的是该Git仓库服务上的几乎所有数据(包括日志信息、历史记录等),而不仅仅是复制工作所需要的文件。当你执行git clone 命令的时候,默认配置下远程Git仓库中的每一个文件的每一个版本都将被拉取下来。

 git clone 远程仓库地址url

移除无效的远程仓库

git remote rm 远程仓库的名字
  • 此命令只是从本地移除远程仓库的记录,并不会真正影响到远
    程仓库。

Git远程仓库推送、抓送,和拉取

推送:当你想分享你的代码时,可以将其推送到远程仓库。

 git push [remote-name][branch-name]

git fetch是从远程仓库获取最新版本到本地仓库,不会自动merge,想看见文件就需要手动进行合并文件 git merge origin/master 。

 git fetch

git pull是从远程仓库获取最新版本到本地仓库,会自动merge

 git pull

Git远程仓库多人协作冲突问题

1、下载远程仓库

git clone
https://gitee.com/WCCRegistered/hundredbattles.git wcc
git clone
https://gitee.com/WCCRegistered/hundredbattles.git kalista

2、设置各自用户环境变量

git config --local -user.name ""
git config --local -user.email ""

3、制造冲突
第一用户修改一个文件并提交

vim a.info
git commit -am"sumbit file"
git push

第二用户慢了一步在提交时发生了报错

vim a.info
git commit -am"sumbit file2"
git push

4、解决冲突
拉取最新代码

 git pull

查看哪里冲突

new
<<<<<<< HEAD
#你自己写的
this is baizhan
=======
#别人写的并且提交了的代码
public class HelloWorld{}
>>>>>>>
0b8b926afc79bd22d220bd0cb76ef7d97b5fb5d4

手动删除不要的代码
重新提交

git commit -am"修改了用户头像信息"
git push

Git远程仓库SSH协议推送

SSH为Secure Shell(安全外壳协议)的缩写,由IETF的网络小组(Network Working Group)所制定。SSH是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用SSH协议可以有
效防止远程管理过程中的信息泄露问题。
配置SSH协议
1、使用命令ssh-keygen -t rsa生成公钥和私钥

ssh-keygen -t rsa

**注意:**执行完成后在window本地用户.ssh目录(C:\Users\Administrator.ssh)下生成如下名称的公钥和私钥。
2、复制公钥文件(publisher文件)内容至服务器上
在这里插入图片描述
3、配置完成后就可以正常传输数据了

Git分支

查看分支

git branch

创建分支

git branch 分支名字

修改分支

git branch -m 修改分支名字

切换分支

 git checkout b1

推送至远程仓库分支

 git push 远程仓库名字 分支名字

合并分支

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

删除分支

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Git标签

Git可以给历史中的某一个提交打上标签,以示重要。比较有代表性的是人们会使用这个功能来标记发布结点(v1.0、v1.2等)。标签指的是某个分支某个特定时间点的状态。通过标签,可以很方便的切换到标记时的状态。
什么时候用标签:
通常开发软件时会完成特定的“里程碑”,如软件版号1.0.0或beta-release之类的,这时就很适合使用标签做标记。
标签与分支有什么区别:
标签与分支的区别是,分支会随着Commit而移动,但标签不会。之前介绍过当Git往前推,进一个Commit时,它所在的分支会跟着向前移动。而标签一旦贴上去不管Commit怎么前进,标签都会留
在原来贴的那个位置上。因此,分支可以看成是“会移动的标签”。

  • 注意:这两者在被删除的时候,都不会影响到被指到的那个对象。

标签的基本操作

1、列出已有标签

git tag

2、创建标签

git tag 标签名字

3、查看标签信息

git show 标签名字

4、标签推送至远程仓库

 git push 远程仓库名字 标签名

5、检出标签
新建一个分支,指向某个tag

git checkout -b [branch] [tag]

6、删除标签
删除本地标签

git tag -d [tag]

删除远程标签

$ git push origin :refs/tags/标签名字
  • 注意::refs/tags/是固定写法

Git工作流

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Git版本控制管理制度是一种软件开发团队使用的工作流程和工具,用于有效管理和跟踪项目代码的变化。Git是一个开源的分布式版本控制系统,具有以下特点和优势。 首先,Git可以在一个项目中记录并追踪多个开发者对代码修改的历史,通过创建不同的分支来实现不同功能的开发。每个人可以在自己的分支上独立开发,修改代码,然后再将更改合并到主分支上,保证代码的版本控制。 其次,Git是一个分布式的版本控制系统,每个开发者都拥有完整的代码仓库副本。这意味着即使在没有网络连接的情况下,开发者仍然可以进行代码修改和提交,只要在网络连接恢复后将更改推送到远程仓库即可。 此外,Git具有高效的分支管理功能。它可以轻松地创建、合并和删除分支,并可以在不同的分支上同时进行开发和测试。这样可以避免在主分支上引入不稳定的代码,并提供了灵活的开发和发布策略。 另外,Git还提供了代码回滚和撤销操作。如果某个提交引入了问题或错误,开发者可以通过回滚到之前的版本来修复问题。此外,在紧急情况下,开发者还可以使用Git的撤销功能,撤销某个提交,以防止问题进一步扩大。 总结起来,Git版本控制管理制度通过有效跟踪和管理项目中代码的变化,提高了开发团队的协作效率和代码质量,同时也为开发者提供了控制代码版本和修复错误的强大功能。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

pk5515

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值