git使用的说明总结

2024-09-09 16:36
文章标签 总结 使用 说明 git

本文主要是介绍git使用的说明总结,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Git使用说明

  1. 下载安装(下载地址)

  • macOS: Git - Downloading macOS

  • Windows: Git - Downloading Windows

  • Linux/Unix: Git (git-scm.com)

  1. 创建新仓库

    本地创建新仓库:创建新文件夹,进入文件夹目录,执行指令 git init ,用以创建新的git

  2. 克隆仓库

    执行指令用以创建一个本地仓库的克隆版本 git clone /path/to/repository
    如果是远端服务器上的仓库,指令应该是这样的: git clone username@host:/path/to/repository

  3. 组成Git仓库的三部分

    • 工作目录:是本地中实际存在的文件目录
    • 暂存区:是个缓存区域,临时保存你的改动
    • HEAD:指向你最后一次提交的结果

    working dir(工作目录) –add–> index(暂存区) –commit–> HEAD

  4. 添加和提交

    添加修改或新文件, git add <filename> 添加指定文件 git add * 添加所有文件到暂存区
    提交改动, git commit -m "代码提交信息" ,现在,你的改动已经提交到了HEAD,但是还没到你的远端仓库

  5. 推送改动

    经过提交,你的改动现在已经在本地仓库的HEAD中了。可以通过以下指令将这些改动推送到远端仓库 git push origin master , 可以将mater缓存你想要推送的任何分支
    如果你还没有配置远程仓库地址,可以通过 git remote add origin <server> ,将你的仓库连接到摸个远程服务器,配置好后就能将你的改动推送到所添加的服务器上

  6. 分支

    分支是用来煎特性开发绝缘开来的。在你创建仓库的时候,master是“默认的”分支。在其他分支上进行开发,完成后再将它们合并到主分支上。
    创建并切换到dev 分支: git checkout -b dev
    切换回主分支: git checkout master
    删除分支: git checkout -d dev
    切换会上一个分支: git checkout -
    除非你将分支推送到远端仓库,不让改分支是不为他人所见的
    推送分支到远端仓库: git push origin <branch>

  7. 更新与合并

    更新本地仓库至最新动态: git pull 该指令执行了在工作目录中获取(fetch)合并(merge)远端的改动。
    将其他分支合并到当前分支(例如master): git merge <branch> ,此情况下git会尝试去自动合并改动。遗憾的是,这可能并非每次都成功,可能出现
    冲突(conflicts)
    。这时候就需要你修改这些文件来手动合并这些冲突(conflicts)。修改后,你需要执行 git add <filename> 用以将它们标记为合并成功。
    预览差异的指令: git diff <source_branch> <target_branch>

  8. 标签

    为软件发布创建标签二推荐的。
    创建标签的指令: git tag 1.0.0 1a2b3c4d5f , 1a2b3c4d5f是你想要提交ID的前10位字符。可以使用 git log 指令获取提交的ID。你可以使用少一点的提交ID前几位,只要它的指向具有唯一性。

  9. 日志-log

    用于了解本地仓库的历史记录,通过最简单的指令 git log 来查询。
    只看某一个人的提交记录: git log --author=bob
    一个压缩后的每一条记录只占一行的输出: git log --pretty=oneline
    通过树形结果展示所有的分支,每个分支都表示名字和标签,同时也值输出一行: git log --graph --oneline --decorate --all
    查看提交记录中修改的文件: git log --name-status

  10. 替换本地改动

    加入你操作失误,你可以使用如下命令替换本地改动: git checkout -- <filename> ,此命令会使用HEAD中的最新内容替换掉你工作目录中的文件。已经添加到暂存区的改动以及新文件都不会受到影响。
    将当前分支的工作树状态和HEAD指针回退到最近的三次提交之前的提交状态: git reset --hard HEAD~3

  11. stash

    用于临时保存工作目录中的更改:
    保存当前更改: git stash ,保存并附带描述信息: git stash "message"

    查看stash列表: git stash list
    弹出最近一次的stash: git stash pop ,此命令会将最近一次的stash应用到当前工作目录中,同时删除对应的stash
    弹出指定的stash: git stash pop stash@{<n>} ,应用指定编号的stash,例如 git stash pop stash@{1}

    应用最近一次的stash: git stash apply , 这条命令会将最近一次的stash应用到当前的工作目录中,但是不会删除该stash。
    应用指定的stash: git stash apply stash@{<n>} ,应用指定编号的stash,例如 git stash apply stash@{1}
    删除最近一次的stash: git stash drop ,此命令会删除最近一次的stash

  12. 快速切换上一个分支

    git checkout -
    
  13. 展示本地分支关联远程仓库的情况

    git branch -vv
    
  14. 列出本地和远程分支

    git branch -a
    //或
    git branch --all
    
  15. 查看远程分支和本地放置的对应关系

    git remote show origin
    
  16. 远程删除了分支本地也想删除

    git remote prune origin
    
  17. 删除分支

    //删除本地分支
    git branch -d <local-branchname>//删除远程分支
    git push origin --delete <remote-branchname>
    //或
    git push origin :<remote-branchname>
    
  18. 查看标签详细信息

    git tag -ln
    
  19. 标签操作

    //一次性推送所有标签,同步到远程仓库
    git push origin --tags
    //删除本地标签
    git tag -d <tag-name>
    //删除远程标签
    git push origin --delete tag <tag-name>
    
  20. 放弃工作区的修改

    //放弃指定文件的修改
    git checkeout <file-name>
    //放弃所有修改
    git checkout .
    
  21. 修改上一个commit的描述

    git commit --amend -m "message"//假如你提交了一个commit,但发现漏掉了几个文件
    git add README.md
    git commit -m "添加README.txt文件"
    git add LICENSE.txt  #发现漏掉了一个文件
    git commit --amend -m "添加README.txt和LICENSE.txt文件"  #更新提交信息并添加遗漏的文件
    
  22. 展示简化的commit历史

    git log --pretty=oneline --graph --decorate --all
    
  23. 强制推送

    git push -f <remote-name> <branch-name>
    
  24. 在 commit log 中查找相关内容

    # 通过 grep 查找,message:所需要查找的字段
    git log --all --grep='<message>'
    
  25. clone项目

    # clone项目的所有内容
    git clone <remote_url>
    # clone指定的单一分支
    git clone -b <branch-name> --single-branch <remote_url>
    # clone最新一次提交
    git clone --depth=1 <remote-url>
    

这篇关于git使用的说明总结的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/1151691

相关文章

postgresql使用UUID函数的方法

《postgresql使用UUID函数的方法》本文给大家介绍postgresql使用UUID函数的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录PostgreSQL有两种生成uuid的方法。可以先通过sql查看是否已安装扩展函数,和可以安装的扩展函数

SpringBoot改造MCP服务器的详细说明(StreamableHTTP 类型)

《SpringBoot改造MCP服务器的详细说明(StreamableHTTP类型)》本文介绍了SpringBoot如何实现MCPStreamableHTTP服务器,并且使用CherryStudio... 目录SpringBoot改造MCP服务器(StreamableHTTP)1 项目说明2 使用说明2.1

如何使用Lombok进行spring 注入

《如何使用Lombok进行spring注入》本文介绍如何用Lombok简化Spring注入,推荐优先使用setter注入,通过注解自动生成getter/setter及构造器,减少冗余代码,提升开发效... Lombok为了开发环境简化代码,好处不用多说。spring 注入方式为2种,构造器注入和setter

MySQL中比较运算符的具体使用

《MySQL中比较运算符的具体使用》本文介绍了SQL中常用的符号类型和非符号类型运算符,符号类型运算符包括等于(=)、安全等于(=)、不等于(/!=)、大小比较(,=,,=)等,感兴趣的可以了解一下... 目录符号类型运算符1. 等于运算符=2. 安全等于运算符<=>3. 不等于运算符<>或!=4. 小于运

使用zip4j实现Java中的ZIP文件加密压缩的操作方法

《使用zip4j实现Java中的ZIP文件加密压缩的操作方法》本文介绍如何通过Maven集成zip4j1.3.2库创建带密码保护的ZIP文件,涵盖依赖配置、代码示例及加密原理,确保数据安全性,感兴趣的... 目录1. zip4j库介绍和版本1.1 zip4j库概述1.2 zip4j的版本演变1.3 zip4

Python 字典 (Dictionary)使用详解

《Python字典(Dictionary)使用详解》字典是python中最重要,最常用的数据结构之一,它提供了高效的键值对存储和查找能力,:本文主要介绍Python字典(Dictionary)... 目录字典1.基本特性2.创建字典3.访问元素4.修改字典5.删除元素6.字典遍历7.字典的高级特性默认字典

JAVA覆盖和重写的区别及说明

《JAVA覆盖和重写的区别及说明》非静态方法的覆盖即重写,具有多态性;静态方法无法被覆盖,但可被重写(仅通过类名调用),二者区别在于绑定时机与引用类型关联性... 目录Java覆盖和重写的区别经常听到两种话认真读完上面两份代码JAVA覆盖和重写的区别经常听到两种话1.覆盖=重写。2.静态方法可andro

使用Python构建一个高效的日志处理系统

《使用Python构建一个高效的日志处理系统》这篇文章主要为大家详细讲解了如何使用Python开发一个专业的日志分析工具,能够自动化处理、分析和可视化各类日志文件,大幅提升运维效率,需要的可以了解下... 目录环境准备工具功能概述完整代码实现代码深度解析1. 类设计与初始化2. 日志解析核心逻辑3. 文件处

一文详解如何使用Java获取PDF页面信息

《一文详解如何使用Java获取PDF页面信息》了解PDF页面属性是我们在处理文档、内容提取、打印设置或页面重组等任务时不可或缺的一环,下面我们就来看看如何使用Java语言获取这些信息吧... 目录引言一、安装和引入PDF处理库引入依赖二、获取 PDF 页数三、获取页面尺寸(宽高)四、获取页面旋转角度五、判断

C++中assign函数的使用

《C++中assign函数的使用》在C++标准模板库中,std::list等容器都提供了assign成员函数,它比操作符更灵活,支持多种初始化方式,下面就来介绍一下assign的用法,具有一定的参考价... 目录​1.assign的基本功能​​语法​2. 具体用法示例​​​(1) 填充n个相同值​​(2)