Git基础知识总结

299 未经授权,禁止转载了解课程

Git基础知识总结


1.在windows上搭建git环境,成功后查看版本号

Linux安装

sudo apt-get install git -y

yum install git -y

windows直接安装exe

查看版本号:git version

 

2.git与svn的区别

(1)git是分布式的,svn是集中式的

(2)git把内容按元数据的方式存储,svn是按文件存储,git的内容完整性优于svn

(3)git和svn分支不同

(4)git没有一个全局的版本号,而svn有

(5)git不需要联网就可以使用,svn需要联网

 

3.在现有版本,完成一次版本提交的过程

git status

git add .

git diff

git commit -m "提交信息"

git push [remote-name]

 

4.还原刚刚提交的内容

(1)git log 查询刚才提交的commit id

(2)git reset --hard commitId

或 git checkout commitId

 

5.查看提交记录并截图

git log

 

6.一个大的需求从开发到上线,代码执行的过程

(1)需求开发阶段,创建主分支master/开发分支dev/和一些具体的功能分支,进行开发

(2)需求开发完合并代码阶段,将具体功能分支上的代码合并到开发分支dev上

(3)需求测试阶段,从dev分支上拿代码进行测试

(4)需求正式投产阶段,从dev分支上拉出一个release分支,用来发布生产代码,投产完成后,合并到master分支和dev分支上

(5)需求投产后bugfix阶段,需要从master分支上拉出bugfix分支,用于修改bug,修改后合并到master分支和dev分支上

 

7.简述git分支

git会把我们每一次提交的内容连成一条时间线,这条线就是一个分支,一个仓库被初始化后,git会默认生成一个主分支,叫做master分支;

git分支意味着可以从主线上分离开来,在不影响主线的同时继续工作;

git的分支模型是轻量级的,可以很快地切换分支,可以频繁使用分支与合并

 

8.以下命令的含义

初次运行前的配置 git config --global user.name guomengtao

git config --global user.email rinuo@qq.com

在工作目录中初始化新仓库 git init

在现有项目中克隆 git clone

检查当前文件状态 git status

跟踪新文件修改 git add 忽略某些文件 .gitignore

git diff(

$ git diff                             working tree和stage文件的差异

$ git diff --cached              stage和commit文件的差异

$ git diff HEAD                   commit和working tree文件的差异

$ git diff test                       不是对比当前分支,而是对比test分支

$ git diff HEAD -- ./test      对比其中的test文件

$ git diff HEAD^ HEAD      对比最近两次提交之间的差异

$ git diff topic master        对比topic和master分支的差异

提交更新 git commit -m "更新说明"

跳过使用暂存区域 git commit -a

移除文件 git rm <文件或目录>

移动文件 git mv<文件或目录>

查看历史记录 git log

修改最 hou一次提交 git commit --amend

取消已经暂存的文件 git reset HEAD

取消对文件的修改 git checkout --

查看当前远程仓库 git remote

添加远程仓库 git remote add

从远程仓库抓取数据 git fetch [remote-name]

推送到远程仓库 git push [remote-name]

查看远程仓库信息 git remote show [remote-name]

查看当前所有分支和当前所在的分支 git branch

创建分支 git branch

创建并切换分支 git branch -b 

工作区切换到分支 git checkout 

将一个分支合并到当前分支 git rebase <分支> 和 git merge <分支>

git暂存工作区修改 git stash 

git恢复暂存内容到工作区 git stash pop

从一个分支已经commit的内容合并到当前分支 git cherry-pick

删除未被追踪/未提交的文件 git clean

拉取(包含fetch的功能)git pull

基于远程分支创建新的本地分支 git checkout -b origin/

 

9.有一个紧急问题需要处理,git处理问题的流程

(1)返回到原先已经发布到生产服务器上的分支

(2)为这次紧急修补建立一个新分支,并在其中修复问题

(3)通过测试后,回到生产服务器所在的分支,将修补分支合并起来,然后再推送到生产服务器上。

(4)切换到之前实现新需求的分支,继续工作

 

10.在本地建立一个工程,写一个.java文件,并上传至版本库

(1)git init新建一个git版本库

(2)在git仓库目录下新建java项目,并写一个java类

(3)git add . 添加项目到暂存区

(4)git commit -m "提交信息" 将项目提交到版本库

(5)git remote origin add "远程仓库地址" 添加一个远程仓库

(6)git push -u origin master,将本地内容推送到远程仓库的master分支上

 

11.git文件的三种状态

已提交(commit)/已修改(modified)/已暂存(staged)

 

12.基本的git工作流程(工作目录/暂存区/git仓库之间的日常操作)

(1)工作目录修改内容,生成快照保存到缓存区(stage files,1->2)

(2)提交更新,将暂存区的快照一直保存到git仓库中(commit,2->3)

(3)从git仓库检出内容或修改到工作目录(checkout,3->1)

 

 

13.分布式版本控制系统优点

安全性高,每个git仓库都是一个完整的版本库,可以在不联网的情况下使用。



课程介绍
讨论{{interaction.discussNum ? '(' + interaction.discussNum + ')' : ''}}
适合人群
本课程专为程序员小白设计,不要再为GIT的复杂操作而烦恼,加入我们的课程,通过生动的实例和简洁的讲解,帮助你在短短一小时内轻松掌握GIT的核心概念和常用操作,更高效地管理代码、提升团队协作效率
你将会学到
将快速熟悉GIT基础知识,包括版本控制,代码托管,协作开发,在本地进行代码管理
  • 管理项目代码的工具,记录代码的历史变更,提升工作效率,协助团队成员协作开发
课程简介

本课程专为程序员小白设计,旨在通过简洁明了、实例丰富的教学方式,帮助初学者在短短一小时内快速熟悉GIT的核心知识和常用操作。课程从GIT的基本概念讲起,逐步深入,引导学员了解版本控制的重要性以及GIT的工作原理。通过生动的案例和实操演练,学员将学会如何创建仓库、提交代码、分支管理、冲突解决等关键技能,轻松应对日常开发中的版本控制需求。

无论你是编程新手,还是已经在职场中摸爬滚打的小能手,只要你想快速了解GIT并提升代码管理效率,这门课程都将为你提供有力的支持。我们特别注重初学者的学习体验,课程内容简洁易懂,讲解方式亲切贴心,让你在轻松愉快的氛围中快速掌握GIT。

通过本课程的学习,你将能够自信地运用GIT进行代码管理,提升团队协作效率,为职业生涯增添一笔宝贵的技能。加入我们的GIT入门课程,让编程之路更加顺畅无阻!


本课程特别适合以下几类人群:

  1. 编程初学者:如果你刚开始踏入编程的大门,对GIT还感到陌生和迷茫,这门课程将为你打下坚实的GIT基础。

  2. 程序员:特别针对程序员的学习习惯和需求,课程内容更加贴心、易懂,帮助你快速融入GIT的世界。

  3. 希望提升职场技能者:无论你的职业目标是什么,掌握GIT都将为你加分不少。本课程将帮助你在职场中更加游刃有余,提升工作效率。

  4. 对版本控制有兴趣者:如果你对版本控制感兴趣,希望通过学习GIT来更好地管理自己的代码和项目,这门课程将为你打开新世界的大门。


展开更多
发布
头像

{{ item.user.nick_name }} {{ EROLE_NAME[item.user.identity] }}

置顶笔记
讨论图
{{ item.create_time }}回复
  • 删除

    是否确认删除?

    确认
    取消
  • {{ item.is_top == 1 ? '取消置顶' : '置顶'}}

    已有置顶的讨论,是否替换已有的置顶?

    确认
    取消
{{ tag.text}}
头像
{{ subitem.user.nick_name }}{{ EROLE_NAME[subitem.user.identity] }}
{{ subitem.create_time }}回复
删除

是否确认删除?

确认
取消
发布
{{pageType === 'video' ? '讨论区抢占沙发,可获得双倍学分' :'讨论区空空如也,你来讲两句~'}}
发布
{{tips.text}}
{{ noteHeaderTitle }} 笔记{{ hasMyNote ? '我的笔记' : '记笔记' }}
{{ hasMyNote ? '我的笔记' : '记笔记' }}
优质笔记
更新于:{{ $dayjs.formate('YYYY-MM-DD HH:mm:ss', item.last_uptime*1000) }}
头像
{{ detail.username }}

公开笔记对他人可见,有机会被管理员评为“优质笔记”

{{ noteEditor.content.length }}/2000

公开笔记
保存
提问

讲师收到你的提问会尽快为你解答。若选择公开提问,可以获得更多学员的帮助。

记录时间点
记录提问时视频播放的时间点,便于后续查看
公开提问
提交