git入门教程6:git基本版本控制

ops/2024/11/1 23:21:17/

一、初始化和配置Git仓库

  1. 安装Git

    • 首先,从Git的官方网站(git-scm.com)下载并安装Git。安装过程中按照提示操作即可。
  2. 初始化仓库

    • 打开终端或Git Bash,导航到你想要进行版本控制的项目目录。
    • 输入git init命令并按下回车键,Git将初始化一个新的仓库,并在当前目录下创建一个隐藏的.git目录。
  3. 配置用户信息

    • 使用git config --global user.name "你的姓名"git config --global user.email "你的邮箱@example.com"命令配置你的用户名和邮箱地址。这些信息将包含在每次提交中。

二、添加文件到暂存区

  1. 查看仓库状态

    • 使用git status命令查看当前仓库的状态,包括哪些文件被修改、哪些文件被暂存等。
  2. 添加文件到暂存区

    • 使用git add <文件或目录>命令将文件或目录添加到暂存区。如果你想要添加当前目录下的所有文件,可以使用git add .命令。

三、提交文件到仓库

  1. 提交文件

    • 一旦文件被添加到暂存区,你就可以使用git commit -m "提交信息"命令将它们提交到仓库中。提交信息应该简洁明了地描述这次提交的内容。
  2. 查看提交历史

    • 使用git log命令查看仓库的提交历史。这个命令会列出所有的提交记录,包括提交哈希值、作者、日期和提交信息。

四、版本控制基本操作

  1. 修改文件

    • 对仓库中的文件进行修改后,使用git status命令查看修改状态。
  2. 再次提交

    • 对修改后的文件进行git add操作,然后再次使用git commit -m "提交信息"命令提交更改。
  3. 查看文件差异

    • 使用git diff命令查看工作区与暂存区、暂存区与最新提交之间的文件差异。

五、撤销和重置操作

  1. 撤销暂存区的修改

    • 如果你不小心将错误的文件添加到了暂存区,可以使用git reset HEAD <文件>命令将文件从暂存区撤销。
  2. 撤销工作区的修改

    • 如果想要撤销工作区的修改,可以使用git checkout -- <文件>命令将文件恢复到最近一次提交的状态。
  3. 重置提交

    • 使用git reset --hard <提交哈希值>命令将仓库重置到指定的提交状态。这个操作会丢失该提交之后的所有更改。

六、查看和比较提交

  1. 查看特定提交的详细信息

    • 使用git show <提交哈希值>命令查看特定提交的详细信息,包括提交信息、作者、日期和提交差异。
  2. 比较两个提交之间的差异

    • 使用git diff <提交哈希值1> <提交哈希值2>命令比较两个提交之间的差异。

七、分支和合并操作

  1. 创建分支

    • 使用git branch <新分支名>命令创建一个新的分支。
  2. 切换分支

    • 使用git checkout <分支名>命令切换到指定的分支。
  3. 合并分支

    • 使用git merge <另一分支名>命令将另一个分支的更改合并到当前分支中。

八、远程仓库操作

  1. 克隆远程仓库

    • 使用git clone <仓库URL>命令克隆远程仓库到本地。
  2. 添加远程仓库

    • 使用git remote add <远程仓库名> <仓库URL>命令为本地仓库添加远程仓库。
  3. 推送更改到远程仓库

    • 使用git push <远程仓库名> <分支名>命令将本地分支的更改推送到远程仓库。
  4. 从远程仓库拉取更改

    • 使用git pull <远程仓库名> <分支名>命令从远程仓库拉取更改并合并到本地分支中。

通过以上步骤,你将能够掌握Git的基本版本控制操作,并能够在日常工作中高效地使用Git进行代码管理。


http://www.ppmy.cn/ops/130258.html

相关文章

基于无框力矩电机抱闸实现人形机器人在展会中不依赖悬吊

目录&#xff1a; 1 人形机器人在展会中的悬吊状态 2 人形机器人不能长时间站立的原因 3 基于电机抱闸使人形机器长时间站立 4 人形机器人在实用场景中必须长时间站立、快速进行 “静-动” 互换 5 人形机器人在实用场景中实现 “静-动” 快速互换的抱闸控制思路 6 无框力…

【论文解读】Med-BERT: 用于疾病预测的大规模结构化电子健康记录的预训练情境化嵌入

【论文解读】Med-BERT: 用于疾病预测的大规模结构化电子健康记录的预训练情境化嵌入 Med-BERT:pretrained contextualized embeddings on large-scale structured electronic health records for disease prediction ​ ​ 摘要:基于电子健康记录(EHR)的深度学习(DL)预…

NLP算法工程师精进之路:顶会论文研读精华

1.学术能力培养 全部论文资料下载&#xff1a; 将论文和 GitHub 资源库匹配 papers with code https://paperswithcode.com/OpenGitHub 新项目快报Github pwc&#xff1a;https://github.com/zziz/pwc GitXiv&#xff1a;http://www.gitxiv.com/ 文章撰写 Overleaf [Autho…

什么是React.js,有什么特点

一.React.js是什么 React 是一个用于构建用户界面的 JavaScript 库&#xff0c;由 Facebook 开发并维护。它主要用于构建单页应用&#xff08;SPA&#xff09;和移动应用&#xff0c;但也可以用于创建复杂的 Web 应用程序。 React 的主要特点是高效、灵活和可组合&#xff0c…

基于Django+python的车牌识别系统设计与实现(带文档)

项目运行 需要先安装Python的相关依赖&#xff1a;pymysql&#xff0c;Django3.2.8&#xff0c;pillow 使用pip install 安装 第一步&#xff1a;创建数据库 第二步&#xff1a;执行SQL语句&#xff0c;.sql文件&#xff0c;运行该文件中的SQL语句 第三步&#xff1a;修改源…

Linux:线程池

什么是线程池 线程池就是一个容纳多个线程的容器&#xff0c;对于一线线程我们可以多次对此线程进行重复使用&#xff0c;从而省去频繁创建线程对象的操作。 妈的写死我了。。回来再说&#xff0c;金工实习去了 #include<stdio.h> #include<pthread.h> #include…

【数据结构 | C语言】单身狗进化

这一天晚上,弯通又做梦了,并且梦到了一个帅气的男孩纸!这个男孩给了弯通一个数字 n。男孩离开前告诉弯通,n!(n 的阶乘)的位数就是距离弯通脱单的天数。矜持的弯通想知道自己还有多久能脱单,快写个程序帮助他! 输入格式:输入第一行为一个正整数 n(1<=n<=25000)…

考个计算机视觉专家,惊艳所有人!

为进一步贯彻落实中共中央印发《关于深化人才发展体制机制改革的意见》和国务院印发《关于“十四五”数字经济发展规划》等有关工作的部署要求&#xff0c;深入实施人才强国战略和创新驱动发展战略&#xff0c;加强全国数字化人才队伍建设&#xff0c;持续推进人工智能从业人员…