• Git 从入门到入坑


    当你想要学习 Git 的时候,我猜你应该已经了解了什么时候 Git。没错,它就是分布式版本管理系统。

    讲人话系列,就拿你上学时候考试来说吧,老师发了一张英语试卷给同学们做。

    这时你就想偷懒了,和几个朋友商量好,一个人做听力,一个人做阅读,一个人做完形填空。

    最后,你们把各自做的和并起来,一张卷子就做完了。不要问为啥没人写作文,那岂不是抄的很明显吗?

    好了,闲聊到此,咱们正式开始介绍 Git。(假设你已经安装并配置好了Git,不会的请百度 )

    开局一张图,内容全靠编!!!图片借于 该站 

    在介绍 Git 之前,这张图片很有必要熟悉,它会加强你的记忆!

    你的仓库由 Git 的三个部分组成,工作目录、暂存区、Head。

    工作目录指的是...望文生义就行了,暂存区存的是你临时的变更,Head 就是你最终提交的区域。

    当我们需要提交变更时,一般都是三部曲:git add filename、git commit -m "msg"、git push origin branch(分支)。

    git add 将变更文件提交至暂存区,git commit 将暂存区中的文件提交至 Head 区,git push 推送至远程仓库。

    在了解了 Git 的基本信息后,我们以一个实际项目为例开始我们的教程吧!

    我们仍以老师发试卷为例,首先假设我的身份是老师:

    我先在 Github 上创建一个 StudyGit 的仓库,然后在再本地创建一个仓库,使之关联起来。

    cd GitRepository
    mkdir StudyGit cd StudyGit git init git remote add origin git@github.com:M
    -Anonymous/StudyGit.git

    接下来我在 Github 上发一张试卷,名叫 English,以及一个 README.md 的说明。

    vi README.md // 内容自己编
    vi English.txt // 内容自己编
    git add README.md
    git add English.txt
    git commit -m "English Test"
    git push origin master

    好了,作为老师,我已经完成了发布作业的任务。

    现在假设我的身份是学生Tony,我需要把老师的试卷克隆到本地。

    cd GitRepository
    git clone git@github.com:M-Anonymous/StudyGit.git

     然后完成听力部分:

    cd StudyGit
    git switch -c hear // 创建并进入 hear 分支
    vi English.txt // finish the part of hear
    git add English.txt
    git commit -m "finish hear"
    git push origin hear

    现在假设我的身份是 Tom,需要完成阅读部分

    cd StudyGit // 同一台机器就 git switch master
    git switch -c read // 创建并进入 hear 分支
    vi English.txt // finish the part of read
    git add English.txt
    git commit -m "finish read"
    git push origin read

    当每个人完成相应的任务后,需要合并分支(目前位于 master 分支)。

    git merge hear
    git merge read

    合并 hear 分支的时候没有什么问题,当合并 read 分支的时候会发生冲突。

    此时不要慌,出现冲突是正常的:

    vi English.txt // 编辑成希望看到的样子
    git add English.txt
    git commit -m "finish"
    git push origin master

    最终,Tony 和 Tom 终于合作做完了 English Test。

    至于其他许多 git 命令,请看 Git Command

  • 相关阅读:
    qemu-img压缩磁盘操作
    qemu-img压缩磁盘操作
    qemu-img压缩磁盘操作
    qemu-img压缩磁盘操作
    单文件组件
    单文件组件
    单文件组件
    单文件组件
    最适合人工智能开发的5种编程语言优缺点对比
    浅谈WebService开发(一)
  • 原文地址:https://www.cnblogs.com/M-Anonymous/p/13298000.html
Copyright © 2020-2023  润新知