Git笔记

Git: 开源的分布式版本控制系统
特性: 1. 直接记录快照, 而非差异比较
2. 近乎所有操作都是本地执行

Git中的三个区域: 工作区, 暂存区, Git仓库
三种状态: 已修改modified, 已暂存staged, 已提交committed

获取Git仓库的两种方式: 
1. 将尚未进行版本控制的本地目录转换为Git仓库
2. 从其他服务器克隆一个已存在的Git仓库

工作区中文件的4中状态:
未被Git管理: 未跟踪Untracked
已被Git管理: 
未修改Unmodified(终极结果)  已修改Modified  已暂存Staged

Git命令:
初始化一个git仓库: git int
查看文件状态: $ git status 或者 $ git status -s
暂存: $ git add a.txt
提交: $ git commit -m '创建num1'
撤销: $ git checkout a.txt  
一次性暂存当前目录下所有未上传的文件: $ git add .
取消暂存的文件: $ git reset HEAD a.txt
跳过使用暂存直接提交: $ git commit -am '跳过'(或者-a -m)
对新增文件不可以,必须是已经被管理的文件
移除文件: 
从Git仓库和工作区中同时移除: $ git rm -f c.txt
只从Git仓库中移除但保留工作区中的: $ git rm --cached c.txt

查看版本历史: $ git log (英文状态下按Q退出)
$ git reset --hard 085fb05  回退: 可以回到085fb05
$ git reflog   可以查看回退记录


.gitignore 忽略文件

去百度搜git log格式化配置 git config --global alias.ll "log --graph --pretty=format:'%C(yellow)%h%Creset -%C(cyan)%d%Creset %s %Cgreen(%an, %cr)' --abbrev-commit"
放在里面执行    就可以直接使用格式化之后的git ll


开源是指不仅提供程序还提供程序的源代码
闭源是只提供程序, 不提供源代码

应该遵守开源许可协议 1.BSD 2.Apach 3.GPL(强制开源, 具有传染性) 4.LGPL 5.MIT(限制最少, 对商业友好)

为什么拥抱开源:
1. 开源给使用者更多的控制权  2. 开源让学习变得容易 3. 开源才有真正的安全

开源项目托管平台: 1. Github  2. Gitlab(私有性)  3. Gitee(国内)
远程仓库有两种访问方式: 
1. HTTPS: 零配置
2. SSH: 需要进行额外的配置, 私钥和公钥

克隆: $ git clone git@gitee.com:mmh1107/git_ssh.git
只能克隆主分支

分支作用: 防止互相干扰, 提高协同开发
master主分支: 用来保存和记录整个项目已完成的功能代码. 不允许程序员直接在master主分支上修改代码
功能分支指的是专门用来开发新功能的分支,它是临时从 master 主分支上分叉出来的,当新功能开发且测试完毕后,最终需要合并到 master 主分支上.

查看分支: $ git branch
创建分支: $ git branch login(新建的分支名字)
切换分支: $ git checkout login
快速创建和切换分支: $ git checkout -b reg(分支的名字)
合并分支: 
1. 切换要合并的主分支上面
2. $ git merge reg(要合并的分支名字)
删除分支: $ git branch -d login(要删除的分支名字) 不可以处于当前分支删除本分支, 要切换到别的分支上进行删除

基于谁创建的分支, 之前的分支上面有什么, 新建的就有什么, 之后的分支修改是独立的, 互不影响的

在工作区创建: $ touch a.txt(文件名字)
将本地分支推送到远程仓库: 
第一次: $ git push -u origin login(:log名字设置不一样时)
之后推送: $ git push
查看远程仓库中所有的分支列表: $ git remote show origin(远程仓库名称)
指定拉取远程的指定分支: $ git fetch origin reg(远程的):reg(本地的)
拉取远程分支的最新的代码: $ git pull
删除远程分支: $ git push origin --delete reg(远程分支名称)
强制删除本地分支: $ git branch -D reg

冲突合并: 
两个不同的分支中, 合并的时候, 同一个文件进行了不同的修改
 


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值