git仓库管理基础知识

git仓库管理基础知识

git 简介

git是用来进行分布式多版本管理的版本管理系统,而常用的SVN则是集中式的版本管理软件。

  • 集中式版本控制系统需要找一个服务器作为大本营,所有的代码都需要提交到服务器上进行统一的管理。当你需要对代码进行改动时,需要先从服务器上下载一份拷贝,修改完成之后,还需要上传回服务器。
  • 在分布式版本控制系统中,大家都拥有一个完整的版本库,不需要联网也可以提交修改。
  • 参考连接:https://fishc.com.cn/thread-71107-1-1.html

git的世界观

本地仓库有 Git 维护的三棵“树”组成,这是 Git 的核心框架。这三棵树分别是:工作区域暂存区域Git 仓库
在这里插入图片描述

工作区域(Working Directory就是你平时存放项目代码的地方。
暂存区域(Stage用于临时存放你的改动,事实上它只是一个文件,保存即将提交的文件列表信息,一般存放在 .git 目录下的 index 文件(.git/index)中。
Git 仓库(Repository就是安全存放数据的位置,这里边有你提交的所有版本的数据。其中,HEAD 指向最新放入仓库的版本(这第三棵树,确切的说,应该是 Git 仓库中 HEAD 指向的版本)。
Git 的工作流程一般是:
在工作目录中添加、修改文件;
将需要进行版本管理的文件放入暂存区域;
将暂存区域的文件提交到 Git 仓库。
因此,Git 管理的文件有三种状态:已修改(modified)已暂存(staged)已提交(committed),依次对应上边的每一个流程。
在这里插入图片描述

git工作流程

在这里插入图片描述

git的基本操作

1.创建仓库
git init
Git 使用 git init 命令来初始化一个 Git 仓库。初始化完成后,会在当前目录生成一个 .git 目录。所有 Git 需要的数据和资源都存放在这个目录中。
git clone
主要用来拷贝一份远程仓库,也就是下载一个项目。
2、git配置
设置提交代码时的用户信息:
$ git config --global user.name "niewei" $ git config --global user.email "314554635@qq.com"
显示当前的 git 配置信息:
$ git config --list
完成上述两个操作后,主要的操作流程有以下部分。
在这里插入图片描述

workspace:工作区
staging area:暂存区/缓存区
local repository:版本库或本地仓库
remote repository:远程仓库
3.git add添加到缓存区
添加一个或多个文件到暂存区:
git add [file1] [file2] ...
添加指定目录到暂存区,包括子目录:
git add [dir]
添加当前目录下的所有文件到暂存区:
git add .
4.git commit暂存区内容添加到仓库
commit提交暂存区到本地仓库。
提交暂存区到本地仓库中:
git commit -m [message]
[message] 可以是一些备注信息。
提交暂存区的指定文件到仓库区:
$ git commit [file1] [file2] ... -m [message]
-a 参数设置修改文件后不需要执行 git add 命令,直接来提交
$ git commit -a
每次执行一次commit,每次只要使用commit命令,就相当于产生了一个历史版本。commit指的是将缓存区的内容提交到仓库,目的为了保证本地的文本和仓库之间的同步。
5.添加远程仓库
第一步:创建github账号

第二步:将本地仓库和远程仓库连接起来
1>生成ssh key 【建立了本机和远程服务器之间的连接】
ssh-keygen -t rsa -C "314554635@qq.com"
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2>验证ssh key是否添加成功
	`ssh -T git@github.com`

在这里插入图片描述

第三步:在github中创建空远程仓库
添加远程版本库: `git remote add [shortname] [url] git remote add origin git@github.com:tianqixin/runoob-git-test.git`
origin表示的是远程仓库中的主分支,对应的是本地仓库中的master,origin可以是别的名称,但是建议使用origin。
git remote rm name # 删除远程仓库 git remote rename old_name new_name # 修改仓库名 git remote show [remote] #显示某个远程仓库的信息
6.本地与远程库同步
以下命令将本地的 master 分支推送到 origin 主机的 master 分支。
git push origin master
git push <远程主机名> <本地分支名>:<远程分支名>
删除主机的分支可以使用 --delete 参数,以下命令表示删除 origin 主机的 master 分支:
git push origin --delete master
7.分支管理
列出分支基本命令:
git branch
创建一个分支:
git branch (branchname)
切换分支命令:
git checkout (branchname)
删除分支命令:
git branch -d (branchname)
合并分支命令:
git merge testing
8.回滚旧版本
回退到上一个版本
git reset --hard HEAD^
回到某个具体的版本
git reset --hard commitid
回到未来的版本
git reset --hard 未来的commitid
果不知道版本号,可以通过以下查询
git reflog
查看提交日志
git log

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值