IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发工具 -> git的学习笔记 -> 正文阅读

[开发工具]git的学习笔记

git学习笔记

一、基本使用命令

初始化仓库

git init

克隆仓库

git clone {仓库的地址直接写,不用大括号}
#克隆指定仓库到指定目录
git clone git仓库 本地目录

常用命令是:git clone \git push\git add \git commit \git checkout \ git pull

  • git init - 初始化仓库。

  • git add . - 添加文件到暂存区。

  • git commit - 将暂存区内容添加到仓库中。

命令说明
git add添加文件到仓库
git status查看仓库当前状态
git diff比较文件的不同(暂存区还是工作区)
git commit提交暂存区到本地仓库
git reset回退版本
git rm删除工作区文件
git pull下载代码并且合并
git push上传代码并且合并

二、狂神说git的学习笔记

版本控制

什么是版本控制 版本迭代

类似:方案1、方案2、绝不改1、绝不改2、最终版1、等

  • 实现跨区域多人协同

  • 组织保护源代码

多人开发最好用版本控制。

版本控制分类

集中版本控制:全在服务器上,但服务器崩了就坏了

分布式版本控制:每个人拥有全部代码。所有版本信息仓库同步到本地每个用户。

不会因为服务器损坏或者网络问题,造成不能工作的问题。


git和svn最重要区别(面试可能会问道)

svn:是集中式版本控制系统,版本库集中放在中央服务器,工作用的自己电脑,从中央服务其得到最新的版本,做完将自己做完的推动到中央服务器,必须联网,对网络带宽要求高

git是分布式版本控制系统,没有中央服务器,每个人的电脑都有完整的版本库,工作的时候不需要联网,因为版本都在自己电脑上,方法:A在自己电脑改了文件o,其他人也在自己电脑上修改了文件o,只需要将各自修改的推送给对方,就可以看到互相的修改了。

git是目前世界上最先进的分布式版本控制系统。

git历史

linux之父李纳斯。托沃兹,两周研发出了git,简直是大神!芬兰人。

git是目前师姐上最先进的分布式版本控制。

git配置

官网下载慢,照镜象: git-for-windows Mirror

卸载的方法:

电脑里面的环境变量先删掉,直接反安装。

安装:无脑安装下一步

git bash:linux和unix风格的命令行。使用最多

git cmd :windows风格的命令行

git gui:不推荐使用

基本的linux的命令

  • cd:改变目录
    cd..  回到上一级目录
    pwd显示当前的目录路径
    clear:清屏
    ls :列出当前文件下的所有文件
    touch:新建一个文件
    rm:移除文件
    mkdir:创建目录
    rm -r :删除一个文件夹
    !!!!!!不能用rm -rf /  这个直接把linux所有根目录下的东西完全删除。
    mv 移动文件
    ?

git配置

查看配置:git config -l

本地:git config --global --list

用户名和密码必须配置。

git/etc/gitconfig :git安装目录下的gitconfig -------system系统级
?
C:/yonghu/xiaoyue/.gitconfig ? ----global级全局:自己配置的 

设置邮箱和用户名
git config --global user.name "yueliangzy"  #名称
git confug --global user.email "2110898656@qq.com"  #邮箱

git基础理论(核心)

工作目录

git本地有三个工作目录:工作目录(working directory)、暂存区(stage)、资源库(repository、git directory)

远程如果有git仓库,其实就可以一共有四个工作区域。

工作流程

1、在工作目录中添加修改文件

2、将需要进行版本管理文件放到暂存区域 git add

3、将暂存区域的文件提交到git仓库中去。 git commit

git管理文件有三个状态:已修改、已暂存、已提交

git项目搭建

创建工作目录与常用命令

工作目录不要有中文

本地仓库的搭建

git init #初始化,在当前目录新建一个git代码库

执行后可以看到.git文件

克隆远程仓库

git clone [url]

真的好方便

git文件操作

文件四种状态

要将文件进行修改、提交等操作。首先要知道文件当前处在什么状态。(过个眼熟)

  • untracked:未跟踪,此文件在文件夹中,但没有加入到git苦衷,不参与版本控制,通过git add将其状态变为staged

  • unmodify:文件已经入库,未修改,版本库里面的文件与文件夹中完全一致。

  • modified:文件已被修改,文件有两个:1、git add进入暂存区。2、git checkout ,从库中去除文件覆盖当前修改。

  • staged:暂存状态,执行git commit将其同步到库中,这是库中的文件与本地文件变为一直,文件变为unmodify状态。git reset HEAD filename取消暂存,文件状态变为modified。

查看文件状态

#查看指定文件状态
git status [filename]
#查看所有文件状态
git status
#添加文件到暂存区
git add .
#提交暂存区的内容到本地仓库 -m 提交信息
git commit -m "new file he.txt"
?

忽略文件

有些文件不要纳入版本控制,比如数据库文件、临时文件、设计文件等

在主目录下简历“.gitignore”文件,此文件有如下规则。

  1. 忽略文件中的空行或已#开头的行会被忽略。

  2. 可以使用Linux通配符

  3. 名称起那面有一个感叹号,表示例外规则,将不被忽略。

  4. 如果名称的最前面是一个路径分隔符 /,表示要忽略的文件在此目录下,二子目录的文件不忽略。

  5. 如果名称的最后面是一个路径分隔符,表示要忽略此目录下的子目录,而非文件。

#是注释
*,txt ?#忽略所有.txt结尾的文件,上传就不会被选中
/temp #忽略根目录的todo
!lib.txt ?#但是lib。txt例外
build/ ? #忽略build、目录下的所有文件
doc/*,txt ?#会忽略doc/notes.txt  但是不包括doc/server/arch.txt
?

狂神自己配置忽略文件:如下图所示:

使用gitee,码云

  1. 注册登录码云,完善鸽人信息

  2. 设置本机绑定的SSH,实现免密码登录。¥ssh-keygen -t rsa ,之后三次回车键,就生成成功了。

#进入 C:\users\xiaoyue\.ssh 目录
#生成公钥
ssh-keygen -t rsa

3.将公钥添加到gitee账户中去

4、使用码云创建一个自己的仓库!

使用IDEA中集成git

项目的目录跟我的git目录一样。

项目名称写一个,在git目录下。

1、新建项目,绑定git。:将远程库clone下来的所有东西克隆到自己项目下。

注意idea文件

添加到暂存区,文件变成绿色了。

2、修改文件,使用IDEA。

3、提交操作,一定要写提交信息,工作中要写自己修改了啥。点右上角中第二个是提交。

git'分支

#列出所有本地分支
git branch
#列出所有远程分支
git branch -r
#新建一个分支,但依然停留到当前分支
git branch [brance name]
#新建一个分支,并切换到该分支
git checkout -b [branch]
#合并指定分支到当前分支
git merge [branch]
#删除分支
git branch -d [branch-name]
#删除远程分支
git push origin --delete [brance-name]
git branch -dr [remote/brance]
?

多个分支如果并行执行,就会导致我们代码不冲突,也就是同时存在多个版本

web-api -A

web-admin -b会调用A

web-app -c 会调用B和A的代码

  开发工具 最新文章
Postman接口测试之Mock快速入门
ASCII码空格替换查表_最全ASCII码对照表0-2
如何使用 ssh 建立 socks 代理
Typora配合PicGo阿里云图床配置
SoapUI、Jmeter、Postman三种接口测试工具的
github用相对路径显示图片_GitHub 中 readm
Windows编译g2o及其g2o viewer
解决jupyter notebook无法连接/ jupyter连接
Git恢复到之前版本
VScode常用快捷键
上一篇文章      下一篇文章      查看所有文章
加:2021-11-28 11:30:06  更:2021-11-28 11:30:41 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/24 2:55:39-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码
数据统计