GIT使用教程(超详细)

这篇具有很好参考价值的文章主要介绍了GIT使用教程(超详细)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

前言

1 git安装

2 增加git账户

3 git全局参数配置

4 创建本地仓库 

5 关联远程分支 

6 删除远程分支关联 

7. 删除分支

8 git stash 

9 git reset 

10 git checkout 

11 合并

12 git log

13 git提交模板 


  •  🎈个人主页🎈:linux_嵌入式大师之路的博客-CSDN博客
  • 🎉🎉🎉欢迎 👍点赞✍评论⭐收藏
  • 🤝希望本文能对你有所帮助,欢迎在评论区交流讨论!🤝

前言

Git是一个免费的分布式版本控制系统,最初由Linus Torvalds开发用于管理Linux内核代码。

下面是一些关于Git的关键点:

  1. 分布式版本控制系统:与集中式版本控制系统不同,Git的每个用户都拥有完整的代码仓库副本,这意味着即使离线,仍然可以继续进行代码管理和更改。
  2. 版本控制:Git可以记录文件的每个版本和修改,可以轻松地查看和比较不同版本之间的差异。
  3. 分支管理:Git非常强大的特性之一是分支管理。它允许创建不同的分支来独立开发功能或修复问题,而不会对主分支造成影响。分支可以合并回主分支,以获得最新的更新。
  4. 团队协作:Git允许多人同时在同一个项目上工作。可以将自己的更改推送到共享的代码仓库,并从其他人那里获取他们的更改,从而实现协同开发。
  5. 提交和推送:Git使用提交(commit)来保存代码的更改,可以包含有关更改的注释以便他人理解本次提交。推送(push)将本次提交上传到共享的代码仓库。
  6. 分布式存储:Git使用SHA-1散列算法对文件进行唯一标识和存储,这意味着即使自己的代码仓库出现故障,仍然可以通过克隆远程仓库来恢复所有历史记录和更改。

总之,Git是一个强大而灵活的版本控制系统,适用于个人开发者和团队协作,使版本控制和代码管理变得更加简单和可靠。

1 git安装

sudo apt-get install git-core openssh-server openssh-client

2 增加git账户

sudo useradd -m git 
sudo passwd git  

3 git全局参数配置

/*去掉diff时文件权限的差异*/
git config --add core.filemode false
/*去掉diff时换行符的差异*/
git config --global core.whitespace cr-at-eol

4 创建本地仓库 

 cd /home/work/test
 git init 
 git add .
 git commit . -m "a commit message"

5 关联远程分支 

将本地分支关联到远程分支上
git remote add origin git@10.8.0.3:test/test.git
第一次推送版本
git push --set-upstream origin master  
非初次提交
git push origin master

6 删除远程分支关联 

查看远程分支

git branch -r

git remote rm origin

7. 删除分支

  • 利用“git branch --delete dev”命令删除本地分支;
  • 利用“git push origin --delete branch”命令删除远程分支;
  • 利用“git branch --delete --remotes  远程分支”命令删除追踪分支,该操作并没有真正删除远程分支,而是删除的本地分支和远程分支的关联关系,即追踪分支

8 git stash 

/*保存当前工作进度,会把暂存区和工作区的改动保存起来。执行完这个命令后,在运行git status命令,就会发现当前是一个干净的工作区,没有任何改动。使用git stash save 'message...'可以添加一些注释*/
git stash
/*显示保存进度的列表。也就意味着,git stash命令可以多次执行*/
git stash list
/*恢复,通过git stash pop命令恢复进度后,会删除当前进度*/
git stash pop [–index] [stash_id]
git stash pop             //恢复最新的进度到工作区。git默认会把工作区和暂存区的改动都恢复到工作区。
git stash pop --index         //恢复最新的进度到工作区和暂存区。(尝试将原来暂存区的改动还恢复到暂存区)
git stash pop stash@{1}        //恢复指定的进度到工作区。stash_id是通过git stash list命令得到的 
/*除了不删除恢复的进度之外,其余和git stash pop 命令一样*/
git stash apply [–index] [stash_id]
/*删除一个存储的进度。如果不指定stash_id,则默认删除最新的存储进度*/
git stash drop [stash_id]
/*删除所有存储的进度*/
git stash clear

9 git reset 

撤回到暂存区
git reset HEAD filename 撤回指定文件
git reset .  撤回所有文件,注意后面还有个.
git reset --hard HEAD  硬复位,丢弃当前所有修改,分支复位到HEAD
git reset --soft HEAD  软复位,所有修改存放到暂存区,分支复位到HEAD

注意:reset 如果不加参数,那么默认使用 --mixed 参数。它的行为是:保留工作目录,并且清空暂存区。也就是说,工作目录的修改、暂存区的内容以及由 reset 所导致的新的文件差异,都会被放进工作目录。简而言之,就是「把所有差异都混合(mixed)放在工作目录中」。

10 git checkout 

git checkout命令用于切换分支或恢复工作树文件。git checkout是git最常用的命令之一,同时也是一个很危险的命令,因为这条命令会重写工作区 。

切换分支:

本地分支切换
git checkout  分支名 
切换远程分支同时创建本地分支
git checkout -b 创建的本地分支名 远程分支名

 恢复工作区文件

恢复该目录下所有文件,和HEAD指向的位置保持一致
git checkout .
恢复指定文件
git checkout test.cpp 

11 合并

切换到主分支,执行git merge 次分支, 则次分支合并到主分支上。

12 git log

git log命令用于显示提交日志信息。

显示全部的版本历史
git log
显示整个提交历史记录,但跳过合并
git log --no-merges
查询ID之前的记录,包含commit 
git log commit_id  
查询commit1与commit2之间的记录,包括commit1和commit2  
git log commit1_id commit2_id 
显示每个版本修改的文件
git log --stat
显示每个版本具体的修改
git log -p

13 git提交模板 

/*设置模板
git config commit.template   绝对路径/[模板文件名]    //这个命令只能设置当前分支的提交模板
git config  — —global commit.template   绝对路径/[模板文件名]    //这个命令能设置全局的提交模板,注意global前面是两杠
例如:    
    git config commit.template   绝对路径/xxx_template
    git config --global commit.template   绝对路径/xxx_template
          
/*设置文本编辑器,命令如下:
git config --global core.editor  [编辑器名字]
例如:git config --global core.editor vi

/*编辑模板提交代码,命令如下
git  commit文章来源地址https://www.toymoban.com/news/detail-821536.html

到了这里,关于GIT使用教程(超详细)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 嵌入式开发--CubeMX使用入门教程

    嵌入式开发–CubeMX使用入门教程 传统的单片机开发时,需要针对片上外设做各种初始化的工作,相当麻烦。 CubeMX是ST公司出品的一款图形化代码生成工具,通过图形化界面,可以非常直观的配置好各种片上外设,时钟,中断,DMA等等各种设备的参数,然后CubeMX可以直接生成初

    2024年04月12日
    浏览(62)
  • 嵌入式linux下如何使用usb键盘

    首先usb键盘驱动的源代码位于一下目录: drivers/usb/input/usbkbd.c 将usb键盘驱动编译进内核: #make menuconfig Device Drivers—USB support----USB HIDBP Keyboard (simple Boot) support (注意:有可能默认设置USB键盘驱动是不可见的,需修改当前目录下的Kconfig文件) 保存设置后,重新编译内核: #sour

    2024年02月11日
    浏览(48)
  • 嵌入式开发神器—SourceInsight 4的使用教程(附安装包)

    很多入门嵌入式的初学者所用的代码编写软件都是 IAR、Keil 等 IDE(集成开发环境),这类软件的优点就是既可以编写代码,也可以编译、调试、下载程序,是我们初学者嵌入式开发的利器。 今天给大家介绍的是公司基本上都会用到的神器—SourceInsight,因为在公司项目中,代

    2024年02月10日
    浏览(48)
  • 使用Yocto进行嵌入式Linux开发3 Toaster

    我们已经知道了如何在Poky中使用BitBake构建图像image,那么我们将学习如何使用Toaster完成同样的操作。 Toaster是一个用于配置和运行构建的Web接口。它与BitBake和Poky构建系统通信,以管理和收集有关构建、软件包和镜像的信息。 使用Toaster的两种方法: 本地 可以将Toaster作为本

    2024年02月08日
    浏览(43)
  • 使用Yocto进行嵌入式Linux开发1 Yocto简介

    Yocto项目是Linux基金会的一个工作组,它是一个开源协作项目,帮助开发人员创建基于Linux的定制系统,这些系统专为嵌入式产品而设计,与产品的硬件架构无关。Yocto项目提供了一个灵活的工具集和开发环境,使世界各地的嵌入式设备开发人员能够通过共享技术、软件栈、配

    2024年02月09日
    浏览(50)
  • 在嵌入式Linux设备上使用Flutter开发图形界面(试水)

    链接: https://www.bilibili.com/video/BV1qE411N7aC/?spm_id_from=333.880.my_history.page.clickvd_source=0c443477abedebf2fdf7abecef55405d 我是跟着这个视频安装 Docker Desktop for Windows + 启用k8s k8s网址 https://github.com/AliyunContainerService/k8s-for-docker-desktop 主要步骤参照 https://www.toradex.com/zh-cn/blog/zai-qian-ru-shi-linux-sh

    2024年02月21日
    浏览(44)
  • 【嵌入式Linux】编译应用和ko内核模块Makefile使用记录

    在Makefile中,变量的赋值可以使用以下几种方式: = :最基本的赋值符号,表示简单的延迟展开(lazy expansion)方式。变量的值将会在使用变量的时候进行展开。 := :立即展开(immediate expansion)的赋值方式。变量的值在赋值的时候立即展开,并且在后续的使用中不再改变。

    2024年02月08日
    浏览(53)
  • 【嵌入式】Linux开发工具arm-linux-gcc安装及使用

    宿主机 执行编译、链接嵌入式软件的计算机 目标机 运行嵌入式软件的硬件平台 “本地”编译器 用来生成在与编译器本身所在的计算机和操作系统(平台)相同的环境下运行的目标代码,例如 Windows 环境生成 Windows 目标代码。 交叉编译器 用来生成在其它平台上运行的目标代

    2024年01月17日
    浏览(60)
  • 使用VSCode clangd插件进行linux内核代码阅读和嵌入式开发

    在进行 Linux 内核代码阅读和嵌入式开发时,选择合适的开发工具至关重要。VSCode 是一个流行的跨平台编辑器,并且它的扩展生态系统非常强大。在这篇博客中,我们将介绍如何使用 VSCode Clangd 插件来提高 Linux 内核代码的阅读和嵌入式开发效率。 Clangd 是一个基于 Clang 的语言

    2024年02月09日
    浏览(51)
  • 使用Yocto进行嵌入式Linux开发2 第一个基于Poky的系统

    Ubuntu: Fedora 在我们的开发主机系统上安装了所需的软件包后,我们可以使用 Git 下载当前 LTS 版本的 Poky 源代码,命令如下: 下载完成后,poky 目录中的内容如下: 在poky目录中存在oe-init-build-env脚本,用于设置构建环境。 这里,[build-directory] 是一可选参数,用于指定配置环境

    2024年02月08日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包