首页 > 其他分享 >Git入门教程

Git入门教程

时间:2024-05-23 17:30:56浏览次数:24  
标签:文件 git 仓库 GitHub 入门教程 Git 分支

Git 入门教程

目录页

1. Git介绍

Git是一个免费开源的分布式版本控制系统,允许开发者高效地管理项目的版本控制,Git与Linux系统是同一个创始人——Linus Torvalds。Git的主要特点包括:

  1. 分布式版本控制:Git的每个开发者都有自己的本地仓库,可以独立工作,不需要连接到中心服务器。这允许开发者在离线状态下进行开发,并在稍后与他人同步。
  2. 速度快:Git在处理大量数据时仍然保持高效,这得益于其C语言编写的底层和高效的存储机制。
  3. 强大的分支功能:Git支持轻量级的分支操作,允许开发者创建新的分支来管理代码的不同部分或不同的项目版本。
  4. 暂存区设计:Git引入了暂存区的概念,使得提交操作更加灵活,可以暂存文件以备将来提交。
  5. 合并跟踪:Git的合并跟踪能力使得在合并不同分支的代码时能够清晰地追踪到每个更改的来源。
  6. 免费开源:Git遵循开源协议,允许任何人查看其代码并参与开发。

Git的这些特性使其成为软件开发和项目管理中的关键工具。它不仅用于代码的版本控制,还可以用于管理文档、图片等任何文件类型的版本控制。此外,Git还支持图形GUI界面和命令行bash两种操作方式,适合不同用户的需求。

1.1. Git工作原理

Git基本工作原理如下所示:


Git的工作原理参考知乎博主程序员三毛的“一文彻底搞清Git工作原理,实战案例

2. Git环境配置

2.1. Git下载与安装

Git官网地址为https://git-scm.com/downloads


Git 官网下载

2.2. Git使用方式

使用Git同步代码有三种方法:

  1. 命令行:在项目文件夹位置,鼠标右键选择Open Git Bash here,即可打开Git的代码运行界面,在此进行代码操作;
  2. 图形化界面(GUI):在项目文件夹位置,鼠标右键选择Git Gui,即可打开Git的GUI界面,在此进行上传操作;
  3. IDE插件/扩展:当安装好软件后,在vscode中可以直接使用Git,及时将修改的代码同步到云端Github仓库。

2.3. Git基本配置

2.3.1. Git与Github的通信建立

为建立Git与Github的通信,需要在 Git端 和 GitHub端 分别进行配置,即把Git端生成的密钥填入GitHub端,这样在后期文件管理时便不需要密码了。Git配置(.gitconfig)文件——Git Config源文件一般位于C:\Users\user_name目录下。各端的配置流程如下所示:

  1. Git端生成SSH密钥,密钥文件位于C:\Users\user_name\.ssh目录下,在这个用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsaid_rsa.pub这两个文件,如果已经有了,可直接跳过,说明该电脑之前已经创建过密钥了。删除该目录下的文件即可删除已配置好的密钥。

    • 命令行方式创建密钥:可以在Windows下打开Git Bash,输入以下命令:$ ssh-keygen -t rsa -C"[email protected]"
    • GUI方式创建密钥可打开Git GUI,按照help-->show SSH Key-->generate key路径生成,如下图;


      Git端配置方法

  2. GitHub端新建一个SSH密钥,并将从Git端得到的密钥输入即可实现通信,操作流程如下图。


    GitHub端配置方法

  3. 值得说明的是,我们的不同设备(不同电脑——办公室or笔记本)都只需要添加一次即可,后续便不用再添加了。

2.3.2. 忽略不同步文件

可以在仓库中创建一个.gitignore文件,通过定义规则告诉git可以忽略那些文件和文件夹,以减少代码仓库的体积,提高操作效率。

使用说明参考:

  1. CSDN博文.gitignore忽略规则、语法、检查文件详解

3. 命令行方式——Git命令代码输入

git命令符是基于命令行界面的工具,它使用的语言是Shell脚本语言。 Shell脚本语言是一种解释型的编程语言,它提供了与操作系统交互的方法,可以执行一系列的命令和操作。在Git中,使用的是Bash Shell,它是常见的Unix/Linux系统默认的命令行工具。

命令行的方式是最基本和最常用的方式,就是在终端中输入Git命令的方式来使用Git。Git命令运行方式有:

  1. 键入Win+R打开cmd窗口运行;
  2. 所有程序位置打开Git Bash Here运行。

参考

  1. CSDN博文——史上最简单的Git入门教程

3.1. 常用Git命令

常用Git命令如下表所示:

Git配置

操作 Git命令
配置信息查看 git config --global --list
配置用户名 git config --global user.name "your_name"
配置邮箱 git config --global user.email your_email
版本查看 git -v
``
操作 Git命令
创建仓库 git init
查看仓库状态 git status
添加到暂存区 git add
提交 git commit
推送到远程仓库 git push
拉取远程仓库内容到本地 git pull
克隆已有仓库内容 git clone

3.2. git本地操作

  1. 初始化本地仓库:进入项目文件夹,在命令行输入:git init,将会在项目文件夹中创建一个.git文件夹,这个文件夹用于保存当前项目的本地仓库和暂存区数据。
  2. 设置用户名和邮箱:如果设置全局的用户名和邮箱,可带一个--global参数。
    git config  user.name "your_name"   #设置用户名
    git config  user.email "your_email" #设置邮箱
    
  3. 添加到暂存区
    git add 文件或目录名    #添加文件或目录到暂存区
    git add .              #添加当前目录(包含子目录)所有删除、变更、新增的文件到暂存区
    git rm 文件1 文件2... --cached      #从暂存区删除文件
    
  4. 提交到仓库
    git commit -m "备注"     #将暂存区的文件提交到本地仓库
    git reset --hard 版本号  #彻底恢复到指定的版本(慎用)
    
  5. 查看命令
    git status  #查看工作区和暂存区的状态,哪些文件添加到暂存区,哪些文件有变化但是没有添加到暂存区。
    git show    #显示最近一次的提交
    git log     #查看所有提交记录(当前分支),如果记录过多可以按上下翻页键或光标键,按Q退出。
    git reflog  #查看所有操作记录
    
  6. 切换版本
    git checkout 版本号/标签/分支
    git用HEAD指针记录当前工作区所处的版本。
    
  7. 标签:可以在某个重要的版本上加一个标签,这样切换时就不需要记忆复杂的版本号哈希值了。
    git tag 标签名           #在当前版本上创建标签
    git tag 标签名 版本号    #在指定版本上创建标签
    git tag                 #列出所有标签
    git checkout 标签名     #切换到指定标签
    git show 标签名         #显示标签所在的版本信息
    git tag -d 标签名       #删除标签
    
  8. 分支:分支用于实验性开发、修复BUG、多任务开发等等。第一次提交会产生一个主分支master/main,分支的相关命令如下:
    git branch             #查看分支,显示结果前面有个*号的是目前所处的分支
    git branch 分支名称     #创建分支
    git checkout 分支名称   #切换到分支
    git branch -m 分支名称  #当前分支重命名
    git branch -d 分支名称  #删除分支
    git merge 分支名称      #将指定分支合并到当前分支
    

3.3. git远程仓库操作

当团队合作开发时就需要远程仓库,可以自己搭建远程仓库,也可以使用网络上免费的代码托管平台。目前全世界知名度最高的代码托管平台是github,如果考虑外网网速慢的问题可以使用国内的gitee(码云)。

  1. 添加远程仓库:增加一个名称为origin的远程仓库,以后提交或拉取代码时只需要使用 origin别名即可,命令如下:
    git remote add origin 远程仓库地址
    
  2. 推送push:如果省略分支名称,则默认为本地当前分支名。如果省略主机名,默认使用origin。每次只会推送一个分支,如果本地有多个分支,可以一个一个推送。
    git push  origin 本地分支名:远程分支名
    git push origin master #将当前分支代码 push 到别名为 origin 的远程仓库中的 master 分支上
    
  3. 克隆clone:用git clone命令(git clone 远程仓库地址)可以将远程仓库克隆到本地仓库,默认只会克隆master/main分支,其他分支创建为“远程跟踪分支”,默认是不显示的,可以使用一下命令:
    git branch -a  #查看所有分支,包括隐藏的
    
  4. 追踪分支git checkout 远程分支全名,git会找到同名的远程跟踪分支,自动从同一个版本创建一个新的本地分支,同时切换到新的本地分支。
  5. 拉取pull:将远程仓库中的代码拉到本地仓库和工作区。
    git pull 远程主机名 远程分支名:本地分支名
    git pull #拉取远程仓库中同名分支到本地当前分支,使用默认主机名origin
    

3.4. 具体操作

3.4.1. 从GitHub向本地下载文件

  1. 获取GitHub中的代码仓库的SSH;
  2. 在本地打开一个文件夹,点击右键,选择Git Bash Here;
  3. 在指令中输入:git clone ‘代码仓库的SSH地址’命令行,达到100%,下载成功。

通过命令行方式下载GitHub文件至本地

4. 图形化界面(GUI)——Git软件使用方法

参考

  1. CSDN的zyk_520博主的GIT GUI(git的可视化工具)一文。

4.1. 通过Git Gui上传文件至GitHub

通过Git Gui上传文件至GitHub的步骤如下所述,分为GitHub端的操作和Git Gui端的操作,详细操作流程可见下图,高清图见附件

GitHub 中操作步骤:

  1. 在Git Hub中创建一个项目仓库;
  2. 输入代码仓库的基本信息,名称、描述、是否公开;
  3. 在Git Hub上创建代码仓库成功,复制SSH。

在Git Gui中的操作步骤如下:

  1. 进入需要上传文件的文件夹中,点击右键,选择“Git Gui Here”,弹出Git Gui窗口;
  2. 因为当前需要上传,所以点击Create New Repository,选择文件夹路径,点击create;
  3. 按Rescan -> stage changed -> sign off ->commit ->push 顺序执行提交步骤;
  4. 在Arbitrary Location中输入Git Hub中对应代码仓库的SSH地址;
  5. 上传成功,结束。

Git Gui上传文件至GitHub操作步骤总览

4.2. 从GitHub向本地下载文件

通过Git Gui下载GitHub文件至本地的步骤如下所述,分为GitHub端获取仓库的ssh地址、Git Gui端克隆,具体如下图:

  1. 获取GitHub中的代码仓库的SSH;
  2. 打开Git Gui,点击Clone Existing Repository
  3. 输入Source LocationTarget Directory,这的注意的是如果选择的本地Target Directory文件夹是未创建的,工具会自动创建,最后点击clone即可将仓库克隆至本地。

通过Git Gui下载GitHub文件至本地

5. IDE插件/扩展——Vscode中的Git拓展使用方法


Git 安装

6. 使用中遇到的问题

6.1. Git上传失败(错误代码:unable to access … Failed to connect to github.com port 443: Timed out)

出现上传失败的问题,一般有两种解决方法:

  1. 通过切换"提子"节点(一般选择美国节点会好些),如果不行就多切换几次即可;
  2. 采用配置公钥的方法。

标签:文件,git,仓库,GitHub,入门教程,Git,分支
From: https://www.cnblogs.com/yibeijiu/p/18209029

相关文章

  • $ git push -u origin "master"
    $gitpush-uorigin"master"Tohttps://gitee.com/ee/0523.git ![rejected]       master->master(non-fast-forward)error:failedtopushsomerefsto'https://gitee.com/ee/0523.git'hint:Updateswererejectedbecauseapushedbra......
  • GitHub SSH 快速配置
    每次更换系统或者电脑时,都需要重新配置一番GithubSSH的验证,记性不太好,写了一个快速部署的辅助脚本,直接安装脚本提示使用即可,经测试,Linux和Windows下均能使用。脚本功能设置Git用户名和邮箱脚本会提示用户输入Git用户名和邮箱,并将其设置为全局配置。生成新的......
  • 主流源代码管理工具GitHub介绍
    GitHub在软件开发领域,源代码管理工具的重要性不言而喻。它们不仅帮助开发者跟踪代码变更,还促进了团队协作,使得项目管理和版本控制变得更加高效。在众多源代码管理工具中,GitHub以其独特的优势,成为了众多开发者和团队的首选。1.引言源代码管理工具是软件开发中不可或缺的一部分......
  • git 的常用命令
      在写好代码,想要将代码提交到github上时,应该首先执行命令gitinit来建立一个本地仓库,然后需要将修改添加到暂存区(gitadd.:添加全部文件;gitadd-p<file>:添加指定文件),之后执行gitcommit-m'message'来将暂存区的修改提交到本地仓库。  在提交到本地仓库后,需要添......
  • powershell脚本批量拉取 git仓库文件
    #定义基础URL和数据库列表$BASE_URL="http://8.8.11.99:8999/yaya/"$DATABASES="common-service","bi-system","erp","gateway","pdm","plm","public-service","scm",&quo......
  • 没有 Git,如何下载 Gitee 代码?
    目录没有Git,如何下载Gitee代码?注册Gitee账号下载代码压缩包没有Git,如何下载Gitee代码?鉴于看我博客的人很多都是大学本科生、非CS专业,大部分人都不会使用Git,也很少使用和浏览GitHub。但是我又经常拿Gitee分享代码,所以我写个文章,介绍一下没有Git怎么下载Gitee平......
  • [oeasy]python018_ 如何下载github仓库_git_clone_下载仓库
    继续运行......
  • Vue搭建移动端h5项目(已开源,附带git地址)Vant+Vue Router+Vuex+axios封装+案例交互+部分
    一、项目介绍以及项目地址             项目介绍:vue2搭建。项目通过amfe-flexible与postcss-pxtorem实现移动端适配;通过Vantui作为项目的组件库;通过Vuex管理数据状态,进行模块化管理;通过VueRouter配置项目路由,进行模块化管理;封装axios进行数据的请求,以及一些页......
  • 源代码管理工具——GitHub的介绍和使用
    源代码管理工具——GitHub的介绍和使用在软件开发的世界里,源代码管理(SCM)是实现项目顺利进行的基石之一。它涉及的不仅仅是代码的版本控制,还包括了项目协作、文档管理、构建自动化等多个方面。本博客将深入探讨在SCM工具中的佼佼者——GitHub,从其基本介绍、重要功能、使用场景......
  • 源代码管理工具Github介绍
    GithubGitHub是一个面向开源及私有软件项目的托管平台,它是基于Git版本控制系统构建的。GitHub提供了一个图形化的界面来管理Git仓库,并且增加了很多协作功能,使得开发者可以更容易地进行代码共享、协作和版本控制。主要功能版本控制:GitHub基于Git,一个分布式版本控制系统,可以跟踪......