Git介绍及常用命令详解

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

一、Git的概述

Git是一个分布式版本控制工具,通常用来对软件开发过程中的源代码文件进行管理。

Git 会跟踪我们对文件所做的更改,因此我们可以记录已完成的工作,并且可以在需要时恢复到特定或以前的版本。Git 还使多人协作变得更加容易,允许将多个人的更改全部合并到一个源中。

二、Git的常用命令

命令名称 作用
git config --global user.name 用户名 设置用户签名
git config --global user.email 邮箱 设置用户签名
git init 初始化本地库
git status 查看本地库状态
git add 文件名 添加到暂存区
git commit -m “日志信息” 文件名 提交到本地库
git reflog 查看历史记录
git reset --hard 版本号 版本穿梭

2.1.设置用户签名

用法

git config --global user.name 用户名 
git config --global user.email 邮箱

Git介绍及常用命令详解,git

Git介绍及常用命令详解,git

说明:“
签名的作用是区分不同操作者身份。用户的签名信息在每一个版本的提交信息中能够看到,以此确认本次提交是谁做的。Git 首次安装必须设置一下用户签名,否则无法提交代码。注意: 这里设置用户签名和将来登录 GitHub(或其他代码托管中心) 的账号没有任何关系。“

设置完成之后会在对应的用户下存在.gitconfig文件

2.2.初始化本地库

2.2.1.基本语法
git init

Git介绍及常用命令详解,git

执行完成之后会出现.git文件,初始化成功

Git介绍及常用命令详解,git

2.2.查看本地库状态
git status

Git介绍及常用命令详解,git

2.3.添加暂存区

本地修改完的文件,需要添加到暂存区才可以提交本地仓库。

git add 文件名
或者
git add .

Git介绍及常用命令详解,git

删除暂存区内容

git restore --staged 文件名
git rm --cached  文件名   (这是比较旧的命令)
区别:
git restore 恢复我此次的修改,我此次的修改不提交
git rm 是删除文件,就是本来仓库中已经有了这个文件,但是我把他删除

git restore --staged 文件名 : 将文件从暂存区撤出,但不会撤销文件的更改(我修改了文件,已经放到暂存区了,现在我不想将这次修改放到暂存区,可以使用 这个命令)
git restore 文件名 :将在工作区中的修改丢弃(需要被追踪,也就是也就被版本控制的文件才可以使用git restore命令

比如我已经把这个文件删掉了,那么我就可以使用这个命令放弃这个删除,但是如果我已经将删掉这个文件并且提交到暂存区之后,那么我需要先执行git restore --staged 文件名之后才可以执行这个命令)

git rm --cached命令与git rm命令都可以删除git版本库中的文件,但是两者之间有一些区别。

使用git rm -f 文件名 命令会将文件从版本库中删除,并且同时删除工作区中对应的文件。而使用git rm --cached 文件名命令会将文件从版本库中删除,但是不删除工作区中的对应文件。

1.git rm 会删除工作区中的文件;
2.git rm 会同时将删除的文件添加到暂存区;
【因此 git rm 相当于 rm + git add 两个命令】
【注意】 git rm 删除的文件必须是 没有经过修改的,也就是说必须要和当前版本库的内容一致的。
3.git commit 后,版本库中的此文件记录也会被删除。
如果git rm 文件  删除的文件和上一个版本库内容不一致,那么要执行删除,则会出现报错。
这时可以使用git rm -f 文件 进行强制删除
.git rm --cached 会删除暂存区中的文件,但是会保留工作区中的文件,并将此次删除提交到暂存区;
2.因此:文件从暂存区中删除掉,即不会被提交到版本库中,也就是说此文件被取消了版本控制。
3.注意 : --cached 参数 删除的文件必须是已经被追踪的文件,即之前被版本控制的文件
向暂存区告知本文件已经删除,但工作区却偷偷保留这个文件。于是commit后仓库就不会有这个文件,是为了用户本次不想上传某些缓存文件设立。

Git介绍及常用命令详解,git

2.4.提交本地库
git commit -m "日志信息"

Git介绍及常用命令详解,git

2.5.历史版本

查看提交记录

git reflog

git log

Git介绍及常用命令详解,git

git reset --hard 版本号

穿越回对应的版本号

Git介绍及常用命令详解,git

Git 切换版本,底层其实是移动的 HEAD 指针,具体原理如下图所示。
Git介绍及常用命令详解,git

指针指向对应的版本。

三、GIT分支操作

3.1.什么是分支

Git介绍及常用命令详解,git

在版本控制过程中,同时推进多个任务,为每个任务,我们就可以创建每个任务的单独分支。使用分支意味着程序员可以把自己的工作从开发主线上分离开来,开发自己分支的时候,不会影响主线分支的运行。分支可以简单理解为副本,一个分支就是个单独的副本。(分支底层其实也是指针的引用)

Git介绍及常用命令详解,git

3.2.分支的好处

同时并行推进多个功能开发,提高开发效率。

各个分支在开发过程中,如果某一个分支开发失败,不会对其他分支有任何影响。失败
的分支删除重新开始即可。

3.3.分支的操作

命令名称 作用
git branch 分支名 创建分支
git branch -v 查看分支
git checkout 分支名 切换分支
git merge 分支名 把指定的分支合并到当前分支上
3.3.1.查看分支
git branch -v	

Git介绍及常用命令详解,git

3.3.2.创建分支
git branch 分支名	

Git介绍及常用命令详解,git

3.3.3.切换分支
git checkout 分支名

Git介绍及常用命令详解,git

3.3.4.合并分支
git merge 分支名

正常合并情况(没有出现冲突)
Git介绍及常用命令详解,git

出现冲突情况进行合并

产生冲突原因:

合并分支时,两个分支在同一个文件的同一个位置有两套完全不同的修改。Git 无法替我们决定使用哪一个。必须人为决定新代码内容。“查看状态(检测到有文件有两处修改)“

Git介绍及常用命令详解,git

Git介绍及常用命令详解,git

这时需要手动进行合并分支

  • 打开冲突文件

Git介绍及常用命令详解,git

修改前:

Git介绍及常用命令详解,git

修改后

Git介绍及常用命令详解,git

保存之后添加暂存区

git add test4.txt

提交版本库

git commit -m "日志信息"  (此时不能带文件名)

Git介绍及常用命令详解,git

master、fix-bug 其实都是指向具体版本记录的指针当前所在的分支,其实是由 HEAD决定的。所以创建分支的本质就是多创建一个指针。“
HEAD 如果指向 master,那么我们现在就在 master 分支上。“HEAD 如果执行 hotfix,那么我们现在就在 hotfix 分支上。“所以切换分支的本质就是移动 HEAD 指针。

3.3.5.创建并切换分支
git checkout -b 分支名 // 新建  分支,并切换到该分支上

Git介绍及常用命令详解,git

3.3.6.删除分支

当之前创建的分支,完成了它的使命,如 Bug 修复完,分支合并以后,这个分支就不在需要了,就可以删除它。

git branch -d 分支名 // 删除  分支

Git介绍及常用命令详解,git

四、GIT团队协作机制

4.1.团队内协作

Git介绍及常用命令详解,git

4.2.跨团队协作

Git介绍及常用命令详解,git

五、GitHub操作

5.1.远程仓库操作

命令名称 作用
git remote -v 查看当前所有远程地址别名
git remote add 别名 远程地址 起别名
git push 别名 分支 推送本地分支上的内容到远程仓库
git clone 远程地址 将远程仓库的内容克隆到本地
git pull 远程库地址别名 远程分支名 将远程仓库对于分支最新内容拉下来后与当前本地分支直接合并

5.2.创建远程仓库

使用github或者gitee

Git介绍及常用命令详解,git

5.2.1.创建远程仓库别名
git remote -v 查看当前所有远程地址别名
git remote add 别名 远程地址

Git介绍及常用命令详解,git

Git介绍及常用命令详解,git

Git介绍及常用命令详解,git

5.2.2.添加远程仓库

如果你已经有了一个本地仓库,然后你打算将它发布到远程,供其他人协作。那么使用:

git remote add origin your_remote_git_repo // 为本地仓库添加远程仓库

Git介绍及常用命令详解,git

5.2.3.移除当前远程仓库
git remote rm origin //先移除之前的远程仓库

Git介绍及常用命令详解,git

5.3.推送本地分支到远程仓库

git push 别名 分支
或
git push 远程仓库地址 分支

如果出现

fatal: refusing to merge unrelated histories
致命:拒绝合并不相关的历史记录
这是因为本地仓库与远程仓库存在不同的历史记录(不是同一个仓库)
解决方法:
在你操作命令后面加 --allow-unrelated-histories
如git pull 远程仓库地址 分支名 --allow-unrelated-histories

Git介绍及常用命令详解,git

推送远程仓库

Git介绍及常用命令详解,git

5.4.拉取远程库到本地库

git pull 别名 分支名
或
git pull 远程仓库地址 分支名
或
git fetch 别名 master

git fetchgit pull 之间的区别:

  • git fetch 是仅仅获取远程仓库的更新内容,并不会自动做合并。

  • git pull 在获取远程仓库的内容后,会自动做合并,可以看成 git fetch 之后 git merge

  • 注意:建议多使用 git fetch

Git介绍及常用命令详解,git

5.5.克隆远程仓库到本地

git clone 远程仓库地址(克隆公开代码不需要登录)

Git介绍及常用命令详解,git

git clone 克隆会做三件事

  • 拉去远程代码
  • 初始化本地仓库
  • 创建别名origin

六、SSH免密登录

在对应运用命令生成.ssh密钥目录

ssh-keygen -t rsa -C 892640297@qq.com

Git介绍及常用命令详解,git

Git介绍及常用命令详解,git

生成.ssh文件

Git介绍及常用命令详解,git

在gitee或者github上将公钥输入

Git介绍及常用命令详解,git

Git介绍及常用命令详解,git

之后就可以使用ssh进行项目的拉取以及推送。

七、自建代码托管平台-GitLab

官网地址:https://about.gitlab.com/

安装说明:https://about.gitlab.com/installation/

八、Git可能需要用到的命令

8.1.查看仓库中的具体修改

git diff    // 查看版本库中所有的改动
git diff Readme.md        // 查看具体文件的改动

很经常的,我们对某个文件做了修改,但过不久就忘记了。这时候就可以通过 git diff 来查看具体的修改内容。

Git介绍及常用命令详解,git

8.2.版本回退

有了 git reflog 来查看提交的历史记录,我们就可以通过 git reset --hard 来回退到我们需要的特定版本,然后使用当时的代码进行各种操作。

git reset --hard HEAD^        // 回退到上一个提交版本
git reset --hard HEAD^^        // 回退到上上一个提交版本
git reset --hard 'commit_id'    // 会退到 commit_id 指定的提交版本

Git介绍及常用命令详解,git

8.3.撤销修改

撤销修改同样包括两方面的内容,由于仓库中的文件在提交之前,可能在工作区中,尚未在版本控制范围内,也可能在暂存区中。

8.3.1.丢弃工作区中文件的修改
git checkout -- Readme.md    // 如果 Readme.md 文件在工作区,则丢弃其修改
git checkout -- .            // 丢弃当前目录下所有工作区中文件的修改

注意: git checkout -- 中的 -- 是必须的。

Git介绍及常用命令详解,git

8.3.2.丢弃已经进入暂存区的修改
git reset HEAD Readme.md // 将 Readme.md 恢复到 HEAD 提交版本的状态
git reset HEAD 文件名 // 将 文件 恢复到 HEAD 提交版本的状态

Git介绍及常用命令详解,git

8.4.建立本地分支和远程分支的关联

在本地仓库中的分支和远程仓库中的分支是对应的。一般情况下,远程仓库中的分支名称和本地仓库中的分支名称是一致的。

有的时候,我们会需要指定本地分支与远程分支的关联。

git branch --set-upstream-to=origin/远程分支名 本地分支名

Git介绍及常用命令详解,git

在zkt-git-test上的hello.txt文件中加入zkt-git-test之后,重新拉去,显示如下

Git介绍及常用命令详解,git

git branch --set-upstream 'local_branch' origin/remote_branch
显示不再支持
--set-upstream已经过时,需要用 新的命令 --set-upstream-to

Git介绍及常用命令详解,git

8.5.修改本地仓库对应的远程仓库地址

当远程的仓库地址发生变化时,需要修改本地仓库对应的远程仓库的地址。主要应用在[工程迁移]过程中。

git remote set-url origin 远程仓库地址

Git介绍及常用命令详解,git

8.6.标签管理

在项目开发过程中,当一个版本发布完成时,是需要对代码打上标签,便于后续检索。获取处于其他的原因,需要对某个提交打上特定的标签。

8.6.1.创建标签
git tag -a 标签名 -m '备注信息' 'commit_id'

-a 参数指定标签名, -m 添加备注信息, ‘commit_id’ 指定打标签的提交(某个版本号)。

8.6.2.查看所有标签
git tag // 查看本地仓库中的所有标签
8.6.3.查看具体标签信息
git show 标签名

Git介绍及常用命令详解,git

8.6.4.删除本地标签

如果打的标签出错,或者不在需要某个标签,则可以删除它。

git tag -d 标签名

Git介绍及常用命令详解,git

8.6.5.推送标签到远程仓库

打完标签以后,有需要推送到远程仓库。

//推送单个标签到远程仓库
git push origin 标签名
//一次性推送所有标签到远程仓库。
git push origin --tags

Git介绍及常用命令详解,git

8.6.6.删除远程标签
git push origin :refs/tags/标签名
 
git push origin --delete 标签名
 
git push origin :标签名

Git介绍及常用命令详解,git

8.7.临时保存修改

在执行很多的 Git 操作的时候,是需要保持当前操作的仓库/分支处于 clean 状态,及没有未提交的修改。如 git pull, git merge 等等,如果有未提交的修改,这些将无法操作。

但是做这些事情的时候,你可能修改了比较多的代码,却又不想丢弃它。那么,你需要把这些修改临时保存起来,这就需要用到 git stash。

8.7.1.临时保存修改

临时保存修改,这样仓库就可以回到 clean 状态。

git stash // 保存本地仓库中的临时修改。

注意:可以多次的 git stash 来保存不同的临时修改。
Git介绍及常用命令详解,git

保存之后,仓库回到clean状态,目前在工作区、暂存区的已经没有了,被暂时保存起来了。

8.7.2.查看临时保存

当你临时保存以后,后面还是要取回来的,那它们在哪里呢?

git stash list // 显示所有临时修改

Git介绍及常用命令详解,git

8.7.3.恢复临时保存

当我们处理完其他操作时,想要恢复临时保存的修改。

git stash apply        // 恢复所有保存的临时修改
git stash pop        // 恢复最近一次保存的临时修改

Git介绍及常用命令详解,git

8.7.4.丢弃临时保存

我们后面觉得临时保存不想要了,那可以丢弃它。

git stash clear // 丢弃所有保存的临时修改

Git介绍及常用命令详解,git文章来源地址https://www.toymoban.com/news/detail-649121.html

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

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

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

相关文章

  • git常用命令详解

    git常用命令详解 Git 是一个分布式版本控制系统,用于追踪文件的变化并协作开发。以下是一些常用的 Git 命令及其详细说明: 初始化仓库: 说明: 在当前目录下初始化一个新的 Git 仓库。 克隆仓库: 说明: 从远程仓库克隆一份代码到本地。 添加文件到暂存区: 说明: 将

    2024年02月03日
    浏览(25)
  • 【Git】git常用命令大全(初学者必看!!最强详解!!)

    目录 初学者在使用之前,需要对git有一个初步的认知 什么是git 常用命令 1、创建仓库 2、克隆远程仓库 3、查询文件状态 4、 添加文件到暂存区 5、 添加所有文件到暂存区 6、 提交暂存区文件到本地建的仓库 7、拉取远程仓库的变更 8、推送本地仓库的变更到远程仓库 9、 查看

    2024年02月10日
    浏览(30)
  • Git 常用命令详解及如何在IDEA中操作

    为了巩固所学的知识,作者尝试着开始发布一些学习笔记类的博客,方便日后回顾。当然,如果能帮到一些萌新进行新技术的学习那也是极好的。作者菜菜一枚,文章中如果有记录错误,欢迎读者朋友们批评指正。 (博客的参考源码可以在我主页的资源里找到,如果在学习的

    2024年02月14日
    浏览(25)
  • git实用命令 git常用分支命令

    要在Git中创建一个新的分支,按照以下步骤进行操作: 确保你当前在要创建分支的代码状态下。你可以使用 git status 命令查看当前的代码状态,并使用 git add 和 git commit 命令将修改的文件提交到当前分支。 1.使用 git branch 命令创建一个新的分支。 这将在本地仓库中创建一个

    2024年02月10日
    浏览(29)
  • Git下载和Git常用命令

    要下载和安装 Git,请按照以下步骤进行操作: 1.访问官方网站:打开 Git 官方网站 https://git-scm.com/。 2.下载 Git 安装程序: 3.选择适用于你的操作系统的下载链接。Git 支持多个操作系统,包括 Windows、macOS 和 Linux。 4.点击下载链接,开始下载 Git 安装程序。 5.运行安装程序:

    2024年02月08日
    浏览(32)
  • Git(3):Git环境常用命令

    1 获取本地仓库 要使用Git对我们的代码进行版本控制,首先需要获得本地仓库 (1)在电脑的任意位置创建一个空目录(例如test)作为我们的本地Git仓库 (2)进入这个目录中,点击右键打开Git bash窗口 (3)执行命令git init (4)如果创建成功后可在文件夹下看到隐藏的.git目

    2024年02月03日
    浏览(32)
  • git快速入门!!! git的常用命令!!!

    Git 是一个开源的分布式版本控制系统,有很多实用的命令可以帮助我们更高效地管理项目和代码。以下是一些常用的 Git 命令及其使用方法和示例: 1. 初始化一个新的 Git 仓库 这个命令会在当前目录下创建一个新的 Git 仓库。 2. 添加文件到暂存区 这个命令会把指定的文件添

    2024年02月05日
    浏览(42)
  • git 常用命令之 git checkout

    大家好,我是 17。 git checkout 是 git 中最重要最常用的命令之一,本文为大家详细解说一下。 checkout 的用途之一是恢复工作区。 checkout . 表示恢复工作区的所有更改,未跟踪的文件不会有变化。 恢复工作区的所有文件风险比较大,会丢失所有工作区的修改,一定要慎用 中间加

    2023年04月13日
    浏览(70)
  • 【Git】git常用命令集合

      Git是现代软件开发不可或缺的版本控制工具,它可以追踪文件的变化、协同开发以及管理代码版本。掌握Git的常用命令对于开发人员来说至关重要。本文将为你介绍一些Git常用命令,帮助你轻松驾驭版本控制。   详细介绍了Git的常用命令,涵盖了版本管理、分支操作、

    2023年04月08日
    浏览(48)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包