git

本文详细介绍Git作为分布式版本控制系统的特性,包括与集中式版本控制系统的区别、基本操作命令如创建版本库、添加文件、提交更改等,以及如何进行分支管理和多人协作开发。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Git是目前世界上最先进的分布式版本控制系统(没有之一)。
集中式与分布式的区别
: CVS及SVN都是集中式的版本控制系统,而Git是分布式版本控制系统
:分布式版本控制系统根本没有“中央服务器”
:分布式版本控制系统的安全性要高很多

集中式版本库是集中存放在中央服务器的
最大的毛病就是必须联网才能工作

创建版本库

mkdir 命令 创建版本库
pwd命令 用于显示当前目录

初始化版本库

通过git init命令把这个目录变成Git可以管理的仓库
如果没有看到.git目录,可以用ls -ah命令就可以看见。

添加文件到git仓库:


  1. git add -A
  2. git commit -m”备注”
  3. git status 查看结果信息
  4. git diff 可以查看修改内容
  5. git log 可以查看提交的版本信息 输出信息太多可以加上–pretty=oneline参数
  6. git reset head~往上第几个版本 回退 head 代表的是仓库中的最新版本
  7. git reset –hard 版本号 回退
  8. git reflog 用来记录你的每一次命令
  9. git diff HEAD – readme.txt命令可以查看工作区和版本库里面最新版本的区别
  10. git checkout – 文件名 丢弃工作区的修改
  11. git checkout 分支名 切换仓库分支
  12. git rm 文件名 移除此《文件名》

你回退到了某个版本,关掉了电脑,第二天早上就后悔了,想恢复到新版本怎么办?找不到新版本的commit id怎么办?
在Git中,总是有后悔药可以吃的。当你用$ git reset –hard HEAD^回退到xxx版本时,再想恢复到AAA,就必须找到AAA的commit id。Git提供了一个命令git reflog用来记录你的每一次命令

关联远程仓库:
关联一个远程库,使用命令git remote add origin git@server-name:path/repo-name.git;

关联后,使用命令git push -u origin master第一次推送master分支的所有内容;

此后,每次本地提交后,只要有必要,就可以使用命令git push origin master推送最新修改
我们第一次推送master分支时,加上了-u参数,Git不但会把本地的master分支内容推送的远程新的master分支,还会把本地的master分支和远程的master分支关联起来,在以后的推送或者拉取时就可以简化命令
创建/切换分支:

git checkout -b 分支名 创建+切换分支

$ git branch  分支名    创建分支
$ git checkout  分支名 切换分支

git branch 查看当前分支/*
git merge 分支名 命令用于合并指定分支到当前分支
git branch -d 分支名 删除分支《分支名 》
git log –graph 命令可以看到分支合并图。
git branch -D 分支名 强行删除
多人协作:

查看远程库信息,使用git remote -v
本地新建的分支如果不推送到远程,对其他人就是不可见的;
从本地推送分支,使用git push origin branch-name,如果推送失败,先用git pull抓取远程的新提交;
在本地创建和远程分支对应的分支,使用git checkout -b branch-name origin/branch-name,本地和远程分支的名称最好一致;
建立本地分支和远程分支的关联,使用git branch --set-upstream branch-name origin/branch-name;
从远程抓取分支,使用git pull,如果有冲突,要先处理冲突。

创建标签:


创建带有说明的标签,用-a指定标签名,-m指定说明文字
git tag -a v0.1 -m "version 0.1 released" 版本号
git tag可以查看所有标签

操作标签:

命令git push origin <tagname>可以推送一个本地标签;
命令git push origin --tags可以推送全部未推送过的本地标签;
命令git tag -d <tagname>可以删除一个本地标签;
命令git push origin :refs/tags/<tagname>可以删除一个远程标签。

命令简写:

co表示checkout,
ci表示commit,
br表示branch

命令git reset HEAD file可以把暂存区的修改撤销掉(unstage)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值