• Git 使用指南(附详细解释)


    Git 是一个强大的版本控制系统,广泛用于软件开发中,用于跟踪文件的更改、协作工作等。无论你是新手还是有经验的开发者,掌握 Git 都是非常有益的。这篇博客将带你了解 Git 的基本使用,希望能帮助你快速入门并有效使用 Git。

    1. 创建和克隆仓库

    初始化仓库

    要在当前目录创建一个新的 Git 仓库,只需执行:

    git init
    

    执行后,当前目录下会生成一个 .git 目录,包含所有 Git 需要的数据和资源。

    如果想指定一个新目录作为 Git 仓库,可以使用:

    git init newrepo
    

    这将在 newrepo 目录下创建 .git 目录。

    添加和提交文件

    要开始跟踪文件,使用 git add 命令:

    git add *.c
    git add README
    

    这些命令添加所有 .c 文件和 README 文件到暂存区。然后,使用 git commit 提交这些文件:

    git commit -m '初始化项目版本'
    

    克隆现有仓库

    如果需要复制或克隆现有的 Git 仓库,使用:

    git clone <repo>
    

    例如,要克隆远程 Git 仓库 Grit:

    git clone git://github.com/schacon/grit.git
    

    可以在命令后指定目录名,更改克隆的本地目录名:

    git clone git://github.com/schacon/grit.git mygrit
    

    2. Git 工作流

    基本工作流

    Git 的工作流程包括三个主要区域:工作目录、暂存区和 HEAD。

    • 工作目录:持有实际文件。
    • 暂存区:临时保存改动。
    • HEAD:指向最后一次提交的结果。

    添加文件到暂存区:

    git add <filename>
    git add .
    

    提交改动到仓库:

    git commit -m "代码提交信息"
    

    在这里插入图片描述

    推送改动

    将本地仓库的改动推送到远程仓库:

    git push origin master
    

    其中 master 可以替换为你想推送的任何分支。

    3. 分支管理

    创建与切换分支

    查看所有分支:

    git branch
    

    创建新分支:

    git branch new-feature
    

    切换到新分支:

    git checkout new-feature
    

    或者创建并切换到新分支:

    git checkout -b new-feature
    

    合并分支

    将更改从 new-feature 合并到 master 分支:

    git checkout master
    git merge new-feature
    

    如果不再需要 new-feature 分支,可以将其删除:

    git branch -d new-feature
    

    4. 更新与合并

    获取并合并远程仓库的改动到当前分支:

    git pull
    

    或者,如果只想获取远程分支的更新:

    git fetch
    

    然后合并到当前分支:

    git merge origin/master
    

    在这里插入图片描述

    5. 实用小贴士

    内建的图形化 Git

    gitk
    

    彩色的 Git 输出

    git config color.ui true
    

    显示历史记录的简洁格式

    git config format.pretty oneline
    

    交互式添加文件到暂存区

    git add -i
    
  • 相关阅读:
    英语六级-day9
    Python3通过字符串访问与修改局部变量
    supervisor无法杀死threading.Thread().start()创建的子线程
    SpringBoot 常用注解总结
    在代码空间中使用源控制
    pnpm的安装与使用
    Android File Transfer(安卓文件传输工具)
    前端技能树,面试复习第 46 天—— Vue 生命周期 | 父子组件钩子的执行顺序 | 组件间通信有哪些方式
    如何生成一个足够安全又容易记住的密码?
    国内程序员真的不如国外国外程序员?到底差在哪里?
  • 原文地址:https://blog.csdn.net/weixin_39973810/article/details/139865692