Git教程I

这篇具有很好参考价值的文章主要介绍了Git教程I。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

本地Git

学习如何使用本地Git。

创建git仓库

git init可以在当前位置创建一个git仓库。

也可以用git clone创建并克隆一个远程仓库。

将修改存到暂存区

假设你添加/修改/删除了文件a.cpp。可以用git status来看你的电脑在修改了哪些内容。untracked就是还没有存在暂存区的。

可以用git add a.cpp来将这个修改添加到暂存区。这之后再用git status就能看到已经存了。

将暂存区提交到当前分支

当前分支就是现在所在的分支。默认创建后是master或main。你总是在某一个分支上。

git commit -m 'NIHAO'来将暂存区内容提交到当前分支。

查看提交历史

多次进行“修改-add-commit”后,你就已经多次commit了。现在可以用git log来看每次commit。每次commit有commit、Author、Date等信息。"commit"后的十六进制数是这个commit的编号。一次commit也就是一个版本。

可以用git blame a.cpp查看一个文件的改变历史。

回退版本

git reset --hard 12345ab来回退到以12345ab开头的编号的commit版本。这会修改你的电脑里相应的文件。

commit编号至少填前四位。

恢复到更晚的版本

刚才我们学习了如何回到更早的版本。那么如何回到更晚的版本?

同样用git reset --hard …命令就可以了。

如果不知道版本commit编号,可以用git reflog查看commit对应的编号(在该行的开头)。

创建新分支

每次commit可以视为一个树上的节点,随着commit的进行,一根树枝在不断生长。我们也可以在一个节点创建一个新分支。这之后,我们可以切换到这个分支上,在这个分支上生长,同时其它分支没有改变。

git branch apple来创建一个名为apple的分支(这时还没有切换过去)。

切换分支

git checkout apple来切换到apple分支。同样,也可以git checkout master切换回来。

git branch查看现在有的所有分支,以及当前在哪个分支。

切换分支之后,电脑里的文件也会相应修改。

简单的分支合并

假设你在某个版本A切换到了新分支apple,并在这上面提交了一些版本。那么现在apple就领先master若干个版本。

如果想让master追上apple,可以先切换到master分支,然后git merge apple就行了。

如果想删除apple分支,可以用git branch -d apple

一定要注意的是,这种分支合并只用于merge到的分支是另一个的后代的情况,git会使用fast-forward模式。

如果你merge了一个更落后的分支(即祖先节点),那么什么也不会发生。

冲突分支合并

如果你merge了一个既有落后也有领先的分支(即既不是祖先也不是后代),那么就不能fast-forward合并。这时merge的话,会进入MERGING模式,你可以在命令行上面看到。

可以用git status总览合并与冲突的情况。有些文件是both modified,也就是说它在两个分支里做了不同的修改。

现在查看电脑里的both modified文件,其内容被改为了类似diff结果的格式。

事实上,这也相当于untracked modified文件。我们在把它修改成想要的内容后git add就可以commit了。commit之后,MERGING模式也结束了。

可以使用git mergetool来修改文件。这里介绍vimdiff的使用方法:聚焦于下方窗口,这个是最后保存的文件。用]c命令定位到不同之处。用:diffg l来采用本地的方案(在屏幕左上方窗口的),:diffg r采用远程方案(屏幕右上方窗口),:diffg b采用base方案(屏幕正上方的)。也可以自己修改调整。最后:wqa全部保存退出。

现在可以用git log --graph --pretty=oneline来看分支合并的示意图。

不使用fast forward: --no-ff

合并到后代时,如果想保持自己的分支和后代分支不在一个节点上,可以加上--no-ff参数。这会新建一个commit,可以用-m参数指定提示信息。这么做的效果看起来像自己先提交了一个没有修改的commit,然后冲突合并(且完全采用)后代。

远程Git

学习如何使用远程Git。

连接远程仓库

git remote命令可以显示远程仓库。如果是用git init创建的本地仓库,那么应该还没有连接,什么也不会显示。

git remote add grape git@github.com:myjs999/gittest.git来连接到一个存在的GitHub仓库。你也可以连接到别的仓库。grape是本地的一个远程仓库的代号,你也可以改成别的名字,比如origin。

将本地分支上传到远程仓库

假设本地有已经commit的分支。

git push grape来将当前分支上传到远程仓库。会在远程仓库自动创建同名分支。

如果远程仓库已经有这个分支,那么只要本地版本领先于远程版本,上传就能成功。

从远程仓库拉取

git pull grape apple可以将远程仓库的apple分支内容拉取到当前分支。这相当于做了一次merge。如果远程仓库领先于本地,那么拉取就能直接成功。否则可以参考冲突合并。文章来源地址https://www.toymoban.com/news/detail-826366.html

到了这里,关于Git教程I的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • git视频教程Jenkins持续集成视频教程Git Gitlab Sonar教程

    git视频教程Jenkins持续集成视频教程Git Gitlab Sonar教程

    @[TOC这里写自定义目录标题) https://edu.51cto.com/lesson/290903.html 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。 我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标

    2024年02月11日
    浏览(20)
  • 【Git 教程】Git 进阶使用方法

    git stash 命令用于临时保存和恢复未完成的工作。 保存当前工作状态: 最新的建议写法: 这会创建一个新的 stash,你可以提供一个消息来进行描述。 查看所有保存的 stash: 恢复最近的 stash: 这会将最近的 stash 应用到当前分支,并从 stash 列表中删除它。 恢复指定的 stash:

    2024年02月21日
    浏览(8)
  • Git教程学习:01 Git简介与安装

    Git教程学习:01 Git简介与安装

    1.1 什么是版本控制系统? 版本控制系统 (Version Control System,简称VCS),是一种记录一个或若干文件内容变化,以便将来查询特定版本修订情况的系统。版本控制系统不仅可以应用于软件源代码的文本文件,而且可以对任何类型的文件进行版本控制。 有了版本控制系统,我们可

    2024年01月22日
    浏览(11)
  • 【Git 入门教程】第六节、Git高级操作

    Git是一种非常强大的分布式版本控制系统,可以帮助开发者轻松地管理和协调代码库。在本文中,我们将介绍一些Git高级操作,包括如何管理Git仓库、标签、子模块和忽略文件。 Git提供了许多命令来管理本地Git仓库。以下是一些常用的管理命令: 初始化一个新的Git仓库: 查

    2024年02月05日
    浏览(18)
  • 【Git 入门教程】第一节、什么是Git?

    【Git 入门教程】第一节、什么是Git?

    在软件开发中,代码的管理和版本控制非常重要。为了更好地管理代码,需要使用一种有效的工具来保证代码的质量和稳定性。而Git正是这样一种工具。 Git是一种分布式版本控制系统,它可以追踪文件的变化,并且可以协同工作。它通过记录文件的修改历史,并在不同时间点

    2023年04月25日
    浏览(9)
  • 【Git 入门教程】第二节、Git基础使用

    【Git 入门教程】第二节、Git基础使用

    Git是一个分布式版本控制系统,它可以帮助开发者更好地管理和维护代码。在本文中,我们将介绍Git的最基本操作,如安装Git、初始化仓库、添加文件、提交代码、查看记录等。 1.下载 要使用Git,首先需要在计算机上安装Git。本文以Windows 10 为环境进行讲解。 官网地址为:

    2023年04月26日
    浏览(12)
  • git基本用法教程(fork软件+git命令)

    git基本用法教程(fork软件+git命令)

    当然除了环境和demo的运行和改写,work flow中当然少不了git的参与! git使得开发的流程更加清晰,main, develop,release,feature,bugFix等branch的通力合作,使得项目可以更快,更高效的推进和整合。这里简单介绍下git的一些用法和语法,并且推荐大家使用fork进行本地项目的管理

    2023年04月08日
    浏览(3)
  • 【Git 入门教程】第五节、Git远程仓库

    【Git 入门教程】第五节、Git远程仓库

    Git是一种分布式版本控制系统,它允许开发者在不同计算机之间协作并共享代码。在本文中,我们将介绍如何以Git为基础进行远程协作。其中包括克隆仓库、推送代码、拉取代码等操作。 要协作开发一个Git项目,需要从服务器上获取该项目的副本。 运行以下命令来克隆Git仓

    2024年02月01日
    浏览(8)
  • Git,Gitee安装IDEA集成Git使用和Git命令详细教程

    Git,Gitee安装IDEA集成Git使用和Git命令详细教程

    给兄弟们提前到个新年好啊!!! 祝各位在新的一年里技术越来月精湛,票子多多,工作顺心。 什么是Git Git是一个 分布式版本控制工具 ,主要用于管理开发过程中的源代码文件(Java类、xml文件、html页面等),在软件开发过程中被广泛使用。 Git是目前世界上最先进的分布

    2024年02月19日
    浏览(8)
  • git的安装与使用教程(附有git命令大全)

    git的安装与使用教程(附有git命令大全)

    在日常工作中git少不了,所以本篇文章教大家如何使用git,便于日后工作与学习,本篇文主要基于 gitee 平台编写。 什么是 Gitee? Gitee 提供免费的 Git 仓库,还集成了代码质量检测、项目演示等功能。对于团队协作开发,Gitee 还提供了项目管理、代码托管、文档管理的服务,5 人

    2024年02月01日
    浏览(9)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包