GIT分布式版本控制系统

简介: GIT分布式版本控制系统

Git工作机制和托管中心


工作机制


历史版本→本地库

git commmit

暂时储存→暂存区

git add

写代码 →工作区


托管中心


代码托管中心是基于网络服务器的远程代码仓库,一般我们简单称为远程库


  • 局域网

GitLab

  • 互联网

GitHub(外国网站)

Gitee 码云(国内网站)


Git常用命令

微信截图_20221013223309.png

设置用户签名


注意:这里设置用户签名和将来登录GitHub(或其他代码托管中心)的账号没有任何关系

admin@DESKTOP-E8GCEEI MINGW64 ~
$  git --version    //查看版本号
git version 2.35.1.windows.2
admin@DESKTOP-E8GCEEI MINGW64 ~
$ git config --global user.name tang  //设置用户签名
admin@DESKTOP-E8GCEEI MINGW64 ~
$ git config --global user.email 2834323411@qq.com //设置用户签名
admin@DESKTOP-E8GCEEI MINGW64 ~
$ git config  --global  core.quotepath false  //设置显示中文文件

初始化本地库

admin@DESKTOP-E8GCEEI MINGW64 ~/Desktop/my demo/git_demo 
$ git init  

初始化之后会自动在当前文件夹下生成一个隐藏文件 .git


查看本地库状态

admin@DESKTOP-E8GCEEI MINGW64 ~/Desktop/my demo/git_demo (master)
$ git status  
On branch master
nothing to commit, working tree clean

添加到缓存区

admin@DESKTOP-E8GCEEI MINGW64 ~/Desktop/my demo/git_demo (master|MERGING)
$ git add hello.txt

提交到本地库


  • 通过git commit -m "日志信息" 文件名
    通过其git status也可看出其不同
    而且查看日志也可看出版本更新
  • git tag <tagname> 基于最新提交创建标签
    git tag -d <tagname> 删除标签
    git push --tag 上传所有标签


admin@DESKTOP-E8GCEEI MINGW64 ~/Desktop/my demo/git_demo (master|MERGING)
$ git commit -m "merge"  
[master f556a5b] merge

历史版本


git reflog 查看版本信息

git log 查看版本详细信息

git log -p 查看每一次提交之间的内容差异

admin@DESKTOP-1SHNHA2 MINGW64 /e/Git (master)
$ git reflog
3f47d64 (HEAD -> master, origin/master, git/master) HEAD@{0}: commit: git笔记1.1
29410ad HEAD@{1}: commit: git笔记1.0
f73d1ab HEAD@{2}: commit: 完善版
df5acc9 HEAD@{3}: reset: moving to df5acc9
20952cf HEAD@{4}: reset: moving to 2095
df5acc9 HEAD@{5}: commit: git笔记1.0
d930448 HEAD@{6}: commit: 进行了第四次修改
24de0b6 HEAD@{7}: commit: 第二次修改有误,返回上次版本
435af33 HEAD@{8}: commit: 进行了第二次修改
20952cf HEAD@{9}: commit (initial): 进行了一次修改
admin@DESKTOP-1SHNHA2 MINGW64 /e/Git (master)
$ git log
commit 3f47d64f23916a165bc218a4bf47ccbe5540bcf5 (HEAD -> master, origin/master, git/master)
Author: tang <2834323411@qq.com>
Date:   Sat Sep 3 13:10:14 2022 +0800
    git笔记1.1
commit 29410ad24169242a841511e3299560203b4cccec
Author: tang <2834323411@qq.com>
Date:   Sat Sep 3 12:47:05 2022 +0800
    git笔记1.0

版本穿梭


git reset --hard 版本号


admin@DESKTOP-1SHNHA2 MINGW64 /e/应用21301唐辉阳/Git (master)
$ git reflog
bf3c4a7 (HEAD -> master) HEAD@{0}: commit: git笔记1.0
f73d1ab HEAD@{1}: reset: moving to HEAD^
29410ad HEAD@{2}: reset: moving to 29410ad
3f47d64 (origin/master, git/master) HEAD@{3}: commit: 唐辉阳的git笔记
29410ad HEAD@{4}: commit: git笔记
f73d1ab HEAD@{5}: commit: 完善版
df5acc9 HEAD@{6}: reset: moving to df5acc9
20952cf HEAD@{7}: reset: moving to 2095
df5acc9 HEAD@{8}: commit: git笔记
d930448 HEAD@{9}: commit: 进行了第四次修改
24de0b6 HEAD@{10}: commit: 第二次修改有误,返回上次版本
435af33 HEAD@{11}: commit: 进行了第二次修改
20952cf HEAD@{12}: commit (initial): 进行了一次修改
admin@DESKTOP-1SHNHA2 MINGW64 /e/应用21301唐辉阳/Git (master)
$ git reset --hard 3f47
HEAD is now at 3f47d64 唐辉阳的git笔记
admin@DESKTOP-1SHNHA2 MINGW64 /e/应用21301唐辉阳/Git (master)
$ git reset --hard bf3c
HEAD is now at bf3c4a7 git笔记1.0

Git的分支操作


在版本控制过程中,同时推进多个任务,为每个任务,我们就可以创建每个任务的单独分支。使用分支意味着程序员可以把自己的工作从开发主线上分离开来,开发自己分支的时候,不会影响主线分支的运行


优点

  • 同时并行推进多个功能开发,提高开发效率
  • 各个分支在开发过程中,如果某一个分支开发失败,不会对其他分支有任何影响。失败的分支删除重新开始即可


分支常用命令

微信截图_20221013223809.png

GitHub操作


远程仓库命令

微信截图_20221013223848.png

查看、创建别名

admin@DESKTOP-E8GCEEI MINGW64 ~/Desktop/my demo/git_demo (master)
$ git remote -v  //查看别名
admin@DESKTOP-E8GCEEI MINGW64 ~/Desktop/my demo/git_demo (master)
$ git remote add git-demo https://github.com/Tang17261828134/git_demo.git
//创建别名
admin@DESKTOP-E8GCEEI MINGW64 ~/Desktop/my demo/git_demo (master)
$ git remote  -v
git-demo        https://github.com/Tang17261828134/git_demo.git (fetch)
git-demo        https://github.com/Tang17261828134/git_demo.git (push)
admin@DESKTOP-E8GCEEI MINGW64 ~/Desktop/my demo/git_demo (master)
$ git remote  remove git-demo  //删除别名


目录
相关文章
|
6月前
|
Linux 开发工具 数据安全/隐私保护
分布式版本控制git
分布式版本控制git
|
3月前
|
存储 算法 开发工具
|
5月前
|
Linux 持续交付 开发工具
版本控制系统的选择:Git vs. Mercurial
【6月更文挑战第20天】Git vs. Mercurial: 两者都是流行的DVCS,Git由Linus Torvalds创建,以其速度和复杂分支管理著称,适合大型项目和有经验的开发者。Mercurial,由Matt Mackall开发,以其简洁命令行和易用性吸引初学者。Git社区更大,扩展更丰富,而Mercurial在某些场景下可能更直观。选择取决于项目需求、团队经验和偏好。
|
6月前
|
存储 Linux 开发工具
Git 分布式版本控制系统基本概念和操作命令
Git 分布式版本控制系统基本概念和操作命令
169 0
|
6月前
|
存储 开发工具 git
Git 版本控制系统的完整指南
Git 是一个流行的版本控制系统。它是由 Linus Torvalds 于 2005 年创建的,自那时以来由 Junio Hamano 维护。 它用于: 跟踪代码更改 跟踪谁做出了更改 编写协作
467 1
|
6月前
|
开发工具 git 开发者
从入门到精通:Git版本控制系统完全指南
从入门到精通:Git版本控制系统完全指南
134 1
|
6月前
|
编译器 定位技术 开发工具
分布式版本控制系统Git的下载、安装与使用其复制GitHub项目代码的方法
分布式版本控制系统Git的下载、安装与使用其复制GitHub项目代码的方法
|
6月前
|
关系型数据库 MySQL 开发工具
Git:分布式版本控制系统的崛起与演变
Git:分布式版本控制系统的崛起与演变
145 0
|
6月前
|
Shell 开发工具 数据安全/隐私保护
分布式管理工具git
分布式管理工具git
69 0
|
存储 Linux 开发工具
Git简介与工作原理:了解Git的基本概念、版本控制系统和分布式版本控制的工作原理
Git简介与工作原理:了解Git的基本概念、版本控制系统和分布式版本控制的工作原理
457 0