首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Git 入门指南:如何高效管理你的代码库

Git 入门指南:如何高效管理你的代码库

作者头像
HZzzzzLu
发布2024-12-26 09:11:24
发布2024-12-26 09:11:24
52400
代码可运行
举报
文章被收录于专栏:codingcoding
运行总次数:0
代码可运行

Git 的介绍

Git 是一个分布式版本控制系统,用于跟踪文件的变化并支持团队协作开发。最初由 Linus TorvaldsLinux 操作系统的创始人)开发,Git 在开发者中变得非常流行,尤其是因为其高效、灵活和能够支持分布式开发的特点。

主要特点和概念

  1. 分布式版本控制
    • 分布式:每个使用 Git 的开发者都拥有完整的代码库副本,并且可以在本地进行操作,不需要依赖中央服务器。这使得 Git相比于集中式版本控制系统(如 SVN)更具有灵活性和抗故障能力。
    • 本地提交:开发者可以在本地进行提交和版本管理,而无需立即与远程仓库同步。可以在网络连接不稳定的情况下继续工作,等到合适的时机再推送更改。
  2. 版本历史和快照
    • Git 会记录每次提交的快照,而不是像其他版本控制系统那样记录差异(差异文件)。每个提交实际上都是代码库状态的完整快照。这样,不仅能恢复历史版本,还能快速了解代码库的变化。
    • 提交(commit)时,Git 会为每次提交生成一个唯一的哈希值(SHA-1),这使得每个提交都可以通过哈希值唯一标识。
  3. 分支与合并(Branching and Merging)
    • Git 的分支管理非常灵活且轻量级。开发者可以在分支上独立工作,然后将分支合并到主分支(通常是 mainmaster)。
    • 分支的创建和切换几乎没有成本,允许开发者同时处理多个功能、修复或者实验性工作,而不干扰主线开发。
    • 合并(merge)允许将不同分支的更改整合到一起,Git 会尽可能智能地自动处理冲突,如果有冲突,开发者需要手动解决。
  4. 工作区、暂存区与版本库
    • 工作区Working Directory):是开发者正在进行编码的地方,包含所有的文件和代码。
    • 暂存区Staging Area):是一个中间区域,允许开发者选择性地将更改“暂存”起来,准备提交。可以理解为一个待提交的文件集合。
    • 版本库Repository):是 Git 存储代码版本历史的地方。每当你执行提交时,Git 会将当前的代码快照保存到版本库中。
  5. 远程仓库(Remote Repositories
    • Git 支持远程仓库,允许多人协作开发。开发者可以将本地仓库的更改推送(push)到远程仓库,也可以从远程仓库拉取(pull)最新的更改。
    • 常见的 Git 托管平台有 GitHubGitLabBitbucket 等,它们提供了托管 Git 仓库的服务,方便团队进行协作。

安装 Git

Linux (Ubuntu)系统中,使用以下命令来安装 Git

代码语言:javascript
代码运行次数:0
运行
复制
sudo apt update
sudo apt install git

使用 git --version来查看是否安装成功:

创建仓库

我们以 gitee 做演示如何创建远端仓库,github 也是同样的道理。

  1. 在你的个人主页找到新建仓库

对你要新建的仓库做各种设置

在你的新建的仓库界面找到 clone 到本地的终端指令

  1. 在终端上执行 clone 指令,然后输入你 gitee 的账号和账号密码。需要注意的是,你只能将远端仓库 clone 到空目录,一个目录下只能有1个本地仓库。

补充:我们进到到 test 目录里,使用 ls -al 指令,如下图:

在这里插入图片描述
在这里插入图片描述
  • 仓库目录其实是工作区,并不是真正的本地仓库,也就是说你在仓库目录写的代码需要手动上传到本地仓库中。
  • .git 这个隐藏目录才是真正的本地仓库

Git 三板斧

add

代码语言:javascript
代码运行次数:0
运行
复制
git add filename
  • 将当前目录下的文件上传到暂存区里。

暂存区存在的意义:当你需要多次提交时候,你就可以将多次提交的文件存放在暂存区,最后一次性上传到本地仓库。

commit

代码语言:javascript
代码运行次数:0
运行
复制
git commit -m "message"
  • 将暂存区的所有文件上传到你的本地仓库里。
  • -m 代表这次修改的相关信息,保存在日志信息里。

使用 git status 来查看当前相关文件的状态

使用 git log 来查看日志信息

注意:当你第一次执行该指令时会报错提醒需要配置用户信息,执行以下指令即可。

代码语言:javascript
代码运行次数:0
运行
复制
git config --global user.name "your name"
git config --global user.email "you@example.com"

push

代码语言:javascript
代码运行次数:0
运行
复制
git push
  • 将你本地仓库的代码和文件推送到远端仓库(该过程要输入你 gitee 的账号与账号密码)

推送到远端仓库后,我们就可以在 gitee 上查看了。

冲突问题

如果远端仓库与本地仓库不一致的话,我们是直接 commit 是会报错的,需要同步两个仓库的信息才可以。

我们只需要将远端仓库拉取到本地就可以完成同步。

代码语言:javascript
代码运行次数:0
运行
复制
git pull

常用 Git 指令

  • git init:初始化一个新的 Git 仓库。
  • git clone:从远程仓库克隆一个本地副本。
  • git status:查看当前工作区的状态(哪些文件被修改了,哪些文件已经暂存等)。
  • git add:将文件添加到暂存区,为提交做准备。
  • git commit:提交暂存区的更改,保存到本地仓库。
  • git push:将本地的更改推送到远程仓库。
  • git pull:从远程仓库拉取并合并最新的更改。
  • git merge:将一个分支的更改合并到当前分支。
  • git branch:列出、创建或删除分支。
  • git log:查看提交历史。
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-12-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Git 的介绍
  • 安装 Git
  • 创建仓库
  • Git 三板斧
    • add
    • commit
    • push
  • 冲突问题
  • 常用 Git 指令
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档