0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

什么是Git基本操作指令

汽车电子技术 来源: 嵌入式之入坑笔记 作者:嵌入式之入坑笔记 2023-02-10 11:32 次阅读

本文的内容有下面的几点:

1、本地仓库的操作指令

2、仓库的远程操作

2.1、远程仓库操作

2.2、从远程仓库获取项目

2.3、上传项目到远程仓库

3、其他的指令

3.1、查看配置信息

3.2、查看仓库状态

3.3、删除版本库中的文件

3.4、查看文件中修改了的内容

3.5、查看历史记录

3.6、还原文件(回退)

4、分支管理指令

4.1、创建分支:

4.2、切换分支:

4.3、合并分支命令:

4.4、列出分支

4.5、分支合并

4.6、删除分支

5、远程库的基本指令整理

Git 的工作就是创建和保存你项目的快照及与之后的快照进行对比。

Git 常用的命令有:

1)git clone - 克隆仓库内容

2)git push - 推送到远程仓库

3)git add - 向本地仓库中添加文件

4)git commit - 提交工作区内容到版本库

5)git checkout -

6)git pull - 从远程仓库拉取内容到工作台

说明:

1)workspace — 工作区

2)staging area — 暂存区/缓存区

3)local repository — 版本库或本地仓库

4)remote repository — 远程仓库

1、本地仓库的操作指令

简单的操作指令如下:

$ git init
$ git add .
$ git commit

1)git init - 初始化仓库。该命令执行完后会在当前目录生成一个 .git 目录,所有 Git 需要的数据和资源都存放在这个目录中。

2)git add . - 添加文件到暂存区。如果当前目录下有几个文件想要纳入版本控制,需要先用 git add 命令告诉 Git 开始对这些文件进行跟踪,然后提交。

3)git commit - 将暂存区的内容提交到本地仓库。所有的更新都会被提交,包括文件、内容更改等。

2、仓库的远程操作

2.1、远程仓库操作

git remote 命令用于在远程仓库的操作。如下所示:

1)显示所有远程仓库:

git remote -v

2)添加远程版本库:

git remote add [别名] [url 地址]

3)删除远程仓库

git remote rm name

4)修改仓库名

git remote rename old_name new_name

2.2、从远程仓库获取项目

git clone [项目地址]
git pull  [项目地址]
git fetch [项目地址]
git merge [目标地址]/[分支]

git clone - 从远程库中克隆项目到本地,是一个包含整个项目的版本库文件夹。该命令通常用于新用户 clone 项目,熟练之后基本都是用 git pull直接拉取项目。

**git pull - **从远程仓库下载代码并合并到本地仓库中。

**git fetch - **从远程仓库获取最新的更新内容(即本地没有的数据)。

git merge - 将远程仓库上的所有更新内容(假设已经被推送到服务器了)合并到你的当前分支。

2.3、上传项目到远程仓库

从将本地的分支版本上传到远程并合并可以使用 git push,如下:

git push <远程主机名> <本地分支名>:<远程分支名>

如果本地分支名与远程分支名相同,可以省略冒号:

git push <远程主机名> <本地分支名>

注意:

1)如果本地版本与远程版本有差异,但又要强制推送可以使用 --force 参数

git push --force origin master

2)删除主机的分支可以使用 --delete 参数,以下命令表示删除 origin 主机的 master 分支:

git push origin --delete master

3、其他的指令

3.1、查看配置信息

git config --list

3.2、查看仓库状态

git status

git status 命令用于查看在你上次提交之后是否有对文件进行再次修改。

3.3、删除版本库中的文件

git rm  xxx.txt

注意:这个命令使用了之后,要 git commit -m “xxx”之后才算是真正的删除了。

如果删除之前修改过并且已经放到暂存区域的话,则必须要用强制删除选项 -f。

git rm -f xxx

如果想把文件从暂存区域移除,但仍然希望保留在当前工作目录中,即从跟踪清单中删除,使用 --cached 选项即可:

git rm --cached <file>

3.4、查看文件中修改了的内容

git diff xxx.txt  比较当前工作空间与staging area,查看工作空间的变化


  git diff --cached  比较staging area与本地仓库,查看暂存区中变化

  git diff HEAD    比较当前工作空间与本地仓库

  git diff newbranch  比较当前工作空间与newbranch分支

  git diff tag1 tag2  比较tag1与tag2

  git diff tag1:file1 tag2:file2  比较tag1的file1与tag2的file2

  git diff tag1 tag2 file  比较tag1与tag2的file文件

  git diff --stat    统计有差异的文件个数

3.5、查看历史记录

git log
git log
  查看全部提交日志
git log -5
  查看最近5次的提交日志
git log –p
  查看所有提交日志及修改的内容
git log –p --author=“scott”
  查看所有scott提交日志及修改内容
git log --since=“2011-05-24”
  查看2011-05-24以后所有的提交日志
git log --graph
  查看提交日志,以图形方式显示
git log --since=“2 days ago”
  查看这两天的提交日志
git log --until=“2011-05-25”
  查看截止2011-05-25所有的提交日志
git log --name-only
  查看所有修改过的文件
git log --pretty=oneline
  查看提交日志,一行显示
git log --pretty=format:%h:%s
  查看提交日志,显示sha1及提交comments

3.6、还原文件(回退)

git revert和git reset的区别:
git revert 是撤销某次操作,此次操作之前的commit都会被保留
git reset 是撤销某次提交,但是此次之后的修改都会被退回到暂存区
git reset --hard
   取消commit,取消add,取消源文件修改
git reset --soft
   取消commit
git reset --mixed
   取消commit,取消add,是默认模式


git reset --hard HEAD   (比较下)
  恢复到HEAD状态
git reset --hard HEAD^
  彻底撤销最近一次提交
git reset --hard HEAD~3
  彻底撤销最近3次提交
git reset  --soft HEAD~3
  撤销最近3commit,恢复到index状态,并且工作空间文件内容不变
git reset HEAD filename
  删除暂存的文件


git revert
   撤销某次提交,此次操作之前的commit都会被保留,但撤销也会作为一次提交进行保存。
git commit --amend
修改最后一次提交。
如果上次提交时遗漏了文件,可以在提交后将文件加入缓存然后用该命令提交即可。
如果缓存中内容没有任何修改,只更新修改的提交注释。

回退版本之后,如果推送远程库是发生错误信息时可以用:

git push -f [ ] [ ]  强推上去

4、分支管理指令

几乎所有的版本控制系统都可以支持分支。使用分支意味着你可以从开发主线上分离开来,然后在不影响主线的情况下继续开展你自己的工作。

4.1、创建分支:

git branch (branchname)
git checkout -b (branchname)  //创建新分支并立即切换到该分支下

4.2、切换分支:

git checkout (branchname)

当你切换分支的时候,Git 会用该分支的最后提交的快照替换你的工作目录的内容, 所以多个分支不需要多个目录。

4.3、合并分支命令:

git merge

你可以多次合并到统一分支, 也可以选择在合并之后直接删除被并入的分支。

4.4、列出分支

列出分支基本命令:

git branch

没有参数时,git branch 会列出你在本地的分支。

$ git branch
* master

这里的意思是:有一个叫做 master 的分支,并且该分支是当前分支。

注意:当你执行 git init 的时候,默认情况下 Git 就会为你创建 master 分支。

4.5、分支合并

一旦某分支有了独立内容,你最终会希望将它合并回到你的主分支。你可以使用以下命令将任何分支合并到当前分支中去:

git merge [分支名]

4.6、删除分支

合并完后就可以删除分支:

$ git branch -d newtest
Deleted branch newtest (was c1501a2).

删除后, 就只剩下 master 分支了:

$ git branch
* master

5、远程库的基本指令整理

git clone 从远程库中克隆项目到本地,是一个包含整个项目的版本库文件夹。该命令通常用于新用户 clone 项目,后面基本都是用 git pull。
git remote 查看远程库的别名(进入 clone 下来的文件夹中执行该命令,别名默认是 origin)
git remote –v 查看远程库的别名和仓库地址。如返回: origin git@gitee.com:ivyli2019/test.git
git push origin master 把本地 master 分支推送到别名为 origin 的远程库
git remote add mytest [url] 添加/关联一个远程仓库,并起别名为 mytest,可自定义别名。
git remote remove mytest 删除远程库的 mytest 别名
git branch -a 查看当前所有的分支,默认只有 master 分支
git branch test 创建 test 分支
git branch –d test 删除 test 分支
git checkout test 从当前分支切换到 test 分支
git checkout –b dev 创建 dev 分支,并切换到 dev 分支上
git merge dev 在当前分支上合并 dev 分支
命令 说明
git add 添加文件到仓库
git status 查看仓库当前的状态,显示有变更的文件。
git diff 比较文件的不同,即暂存区和工作区的差异。
git commit 提交暂存区到本地仓库。
git reset 回退版本。
git rm 删除工作区文件。
git mv 移动或重命名工作区文件。
命令 说明
git log 查看历史提交记录
git blame 以列表形式查看指定文件的历史修改记录
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 项目
    +关注

    关注

    0

    文章

    30

    浏览量

    17457
  • Git
    Git
    +关注

    关注

    0

    文章

    193

    浏览量

    15418
收藏 人收藏

    评论

    相关推荐

    Git常用的超级实用命令

    的一些Git工作流。 1 Git 常用的超级实用命令 1.1 与仓库相关的操作 克隆代码仓库到本地,开发必用 git clone 查看本地仓库配置了那些对应的远程仓库。
    的头像 发表于 10-09 17:19 919次阅读
    <b class='flag-5'>Git</b>常用的超级实用命令

    HarmonyOS-Device Stdio中git的使用

    1.创建本地仓库新建文件夹,在文件中依次运行以下git指令。A.初始化gitgit initB.添加远程仓库git remote add origin (仓库ssh地址)2.在文件下新建项目3点击
    发表于 02-16 16:15

    逻辑操作指令

    逻辑操作指令 逻辑操作指令共有效25条,有与、或、异或、求反、左右移位、清0等逻辑操作,对应的寻址方式有直接、寄存器和间接寻址,该类
    发表于 03-14 15:34 1713次阅读

    操作指令

    操作指令操作指令共有17条,均以位为操作对象,分别完成位传送、位状态控制、位逻辑运算、位条件转移等功能,在汇编语言中,位地址的表
    发表于 03-14 15:35 3396次阅读

    一文读懂Git重要概念和常用指令

    每次提交,Git都把它们串成一条时间线,这条时间线就是一个分支。在Git里,有个分支叫主分支,即master分支。HEAD严格来说不是指向提交,而是指向master,master才是指向提交的,所以,HEAD指向的就是当前分支。
    发表于 06-17 04:13 1145次阅读
    一文读懂<b class='flag-5'>Git</b>重要概念和常用<b class='flag-5'>指令</b>

    Git是什么?Git的基本使用资料说明

      Git是什么? Git是目前世界上最先进的分布式版本控制系统(没有之一)。
    发表于 05-29 17:56 1次下载
    <b class='flag-5'>Git</b>是什么?<b class='flag-5'>Git</b>的基本使用资料说明

    Git 命令+原理 程序员必备的基础

    掌握Git命令是每位程序员必备的基础,之前一直是用smartGit工具,直到看到大佬们都是在用Git命令操作的,回想一下,发现有些Git命令我都忘记了,于是写了这篇博文,复习一下~ 文
    的头像 发表于 11-14 10:01 1524次阅读
    <b class='flag-5'>Git</b> 命令+原理 程序员必备的基础

    通俗易懂的Git指令的本质

    ? 碰见版本回退就抓瞎?别问我怎么知道的,问就是:“我曾经就是这样啊~~”。 针对这些问题,今天我就将这几年对Git的认知和理解分享出来,尽可能的从本质去讲解Git,帮助你一步一步去了解Git的底层原理,相信读完本篇文章你便可以
    的头像 发表于 06-24 18:06 1281次阅读

    操作指令

                                                      位操作指令操作指令操作又称为布尔
    发表于 01-13 13:54 3次下载
    位<b class='flag-5'>操作</b><b class='flag-5'>指令</b>

    GIT合代码的经典操作场景

    git对于大家应该都不太陌生,熟练使用git已经成为程序员的一项基本技能,尽管在工作中有诸如 Sourcetree这样牛X的客户端工具,使得合并代码变的很方便。但找工作面试和一些需彰显个人实力的场景,仍然需要我们掌握足够多的git
    的头像 发表于 04-09 16:42 1354次阅读

    利用Learn Git Branching轻松学习Git

    托管网站,与他人协作管理推进开源项目必须要掌握的工具。 而Git中的常用操作,虽然上手难度低,但涉及到细节处尤其是多分支操作,难免会让很多新手犯糊涂,今天我就给大家推荐一个开源项目,帮助使用者在轻松游戏的过程中熟练掌握
    的头像 发表于 09-15 14:53 1225次阅读

    git rebase和git merge的区别

      解决冲突 git rebase和git merge的区别 分支合并 git merge是用来合并两个分支的。 比如:将 b 分支合并到当前分支。 同样git rebase b,也是
    的头像 发表于 07-05 09:54 398次阅读
    <b class='flag-5'>git</b> rebase和<b class='flag-5'>git</b> merge的区别

    Git是什么 Git介绍

    git 是什么? Git 诞生于 2005 年,是一款免费、开源、分布式版本控制系统。 直接记录快照,而非差异比较 Git 和其它版本控制系统的主要差别在于 Git 对待数据的方式。
    的头像 发表于 07-22 10:50 1228次阅读
    <b class='flag-5'>Git</b>是什么 <b class='flag-5'>Git</b>介绍

    Git撤消操作的方法

    撤消操作 在任何一个阶段,你都有可能想要撤消某些操作。注意,有些撤消操作是不可逆的。 有时候我们提交完了才发现漏掉了几个文件没有添加,或者提交信息写错了。此时,可以运行带有 --amend 选项
    的头像 发表于 07-22 11:29 421次阅读

    git基本操作命令用法

    基本用法 上面的四条命令在工作目录、暂存目录(也叫做索引)和仓库之间复制文件。 git add files把当前文件放入暂存区域。 git commit给暂存区域生成快照并提交。 git reset
    的头像 发表于 09-13 16:29 572次阅读
    <b class='flag-5'>git</b>基本<b class='flag-5'>操作</b>命令用法