什么是git?

简介

git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。

最初是 Linus 为了管理 Linux 内核开发而开发的一个开源的版本控制软件。

它的作用

可以实现软件的版本控制,在多个版本之间切换;
可以实现多分支开发,提高开发效率;
可以实现历史记录,历史状态的恢复;
团队内部实现权限管理等。

版本控制分类

集中式:svn,各个版本存于服务器,易单点故障

分布式:git,能有效解决单点故障,C语言开发

git的操作

创建一个项目,在项目目录下,初始化git仓库   

git init

然后会在项目目录下生成一个隐藏文件夹.git,内部的文件不能随意修改。

设置签名 用户名:zhengzhi

 Email:xxxx@qq.com 作用:

区别不同的开发人员 命令:

项目级别---当前项目   

git config user.name zhengzhi

git config user.email xxxx@qq.com   

签名保存在项目目录下.git/config

系统用户级别---登录操作系统的用户  

 git config ==- -global== user.namezhengzhi

git config ==- -global== user.email xxxx@qq.com   

签名保存在~/.gitconfig 二者的优先级:就近原则

实际操作

git status #查看当前工作区、暂存区状态

#所有文件增加到暂存区,也可指定一个文件
git add .
#从暂存区移除所有-
git rm --cached -r ./*

#暂存区提交到本地仓库
git commit -m "描述信息" 
#查看历史记录
git log

#格式化输出版本
git log --pretty=online
git log --oneline
git reflog

版本切换

1)==使用索引==

2)使用^,后退一步

3)使用~,后退n步

#随意切换
git reflog
git reset --hard 复制的索引

#后退的切换
git reset --hard HEAD^ #后退一步
git reset --hard HEAD^^ #后退两步

#后退n步
git reset --hard HEAD~100 #后退100步

#查看本地文档
git help reset

#reset的三个参数 index file[暂存区] working tree[工作区]
#reset --soft:仅在本地仓库移动HEAD指针
#reset --mixed:本地仓库移动指针;重置暂存区;
#reset --hard:本地仓库移动指针;重置暂存区;重置工作区
#hard使用较多

删除文件,并找回

文件存在时的状态,需提交到本地库

#删除
rm test.txt  #在git管理的项目目录下
#将删除操作,增加到暂存区
git add .
#提交本地仓库
git commit -m "测试删除"
#查看文件,已删除

#恢复只需回到上一个版本,就可以实现文件的恢复
git reset --hard 索引

#如果删除操作,只增加到暂存区,没有提交到本地库
#则简单恢复如下

git reset --hard HEAD

代码托管平台

  1. GitHub,国外服务器,慢

  2. 码云,国内服务器,快

代码推送到远程托管平台==

查看远程仓库

git remote -v
#添加远程仓库
git remote add origin url  # url为复制的远程仓库https地址

推送代码

git push origin master
git push origin master --force  #强制推送

如果超时,就多尝试几次:

当远程仓库发生改变时,应该先拉取远程仓库

git pull origin master  # 拉取远程仓库

项目的分支

#查看分支
git branch
#创建分支
git branch b1
#切换到b1分支
git switch b1

#将b1分支合并到master
git switch master
git merge b1

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值