git基础知识

配置:

1.name 
	- git config --global user.name  "用户名"
2.email
	- git config --global user.email "邮箱"

文件状态

  • git中的文件有两种状态:未跟踪和已跟踪。跟踪指该文件被git所管理,已跟踪的文件又有三种状态:未修改、修改和暂存。
  • 暂存,表示文件修改已经保存,但是尚未提交到git仓库。
  • 未修改,表示磁盘中的文件和git仓库中文件相同,没有修改。
  • 已修改,表示磁盘中文件已被修改,和git仓库中文件不同。
  • 可以通过 git status 来查看文件状态

使用git

1.git status
	- 查看当前仓库状态
2.git init 
	- 初始化仓库
 刚添加到项目中的文件属于`未跟踪`的状态
 3.git add <filename>
 	- 将文件从`未跟踪` --> `暂存`的状态
 	- git add * 或 git add . 将所有`未跟踪`(已修改)文件 --> `暂存状态`
 4.git commit -m "注释信息"
 	- 将暂存的文件存储到仓库中
 	- 文件状态从`暂存`-->`未修改`
 	- git commit -a -m "注释"     提交所有已修改的文件(未跟踪文件不会提交)
 5.修改被跟踪的文件内容后
  	- 文件状态从`未修改·-->`已修改`
 6.已修改内容要提交需要先通过git add <filename> 暂存,
   然后git commit 将其-->未修改
 7.git restore <filename>
 	- 重置文件
 	git restore --staged <filename>
 	- 将文件从暂存状态取消
 8.git rm <filename>
 	- 删除文件
 9.git rm <filename> -f
 	- 强制删除
 10.git mv from to 
 	eg: git mv .\1.txt .\2.txt
 	- 移动文件 重命名文件

分支(branch)

     git在存储文件时,每一次代码的提交都会创建一个与之对应的节点,git就是通过一个一个的节点来记录代码的状态的。节点会构成一个树状结构,树状结构就意味着这个树会存在分支,默认情况下仓库只有一个分支,命名为master。在使用git时,可以创建多个分支,分支与分支之间相互独立,在一个分支上修改代码不会影响其它的分支。因此在开发时都是在自己的分支上编写代码,测试完毕后才合并到主分支。

1.git branch
	- 查看分支
2.git branch <branch name>
	- 创建分支
3.git branch -d <branch name>
	- 删除分支
4.git switch <branch name>
	- 切换至<branch name>分支
5.git switch -c <branch name>
	- 创建并切换至该分支

合并(merge)

	1.git merge <branch name>
		- 将<branch name>分支合并到当前分支
		- 若当前分支与带合并分支在一条线上触发快速合并
		  即(直接将当前分支指向<branch name>分支的最后)

变基(rebase)

在开发中除了通过merge来合并分支外,还可以通过变基来完成分支的合并。
我们通过merge合并分支时,在提交记录中会将所有的分支创建和分支合并的过程
全部都显示出来,这样当项目比较复杂时我们必须要反复的创建、合并、删除分支。
这样一来将会使得我们的代码提交记录变得极为混乱。
- 变基原理(变基时发生了什么)
	1.当我们发起变基时,git会首先找到两条分支最近的共同祖先
	2.对比当前分支相对于祖先的历史提交,并且将它们提取出来存储到一个临时文件中
	3.将当前部分指向目标的基地
	4.以当前基地开始,重新执行历史操作
- 变基和merge对于合并分支来说最终的结果是一样的!但是变基会使得代码的提交记录
  更整洁、清晰!注意!大部分情况下合并的变基是可以互换的,但是如果分支已经提交
  给了远程仓库,那么这时尽量不要变基

远程仓库(remote)

远程的git仓库和本地的本质没有什么区别,不同的在于远程的仓库可以同时呗多人同时
访问使用,方便我们协同开发。目前常用的库有两个:GitHub和Gitee(码云)
将本地库上传github:
	git remote add <remote name> <url>
	git branch -M main # 修改分支的名字为main
	git push -u <remote name> main # git push 将代码上传到服务器上
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值