git pull和push整理和归纳

各个模块概念

我的理解:
Git是版本管理工具,它主要对指定目录下的一些特定的文件的修改进行版本管理。
相关的模块有:远程仓库(Remote Repository)、版本库(Repository)、暂存区(Index)、工作区(workspace)。

网上找的图:在这里插入图片描述

工作区

我的理解:
工作区相当于指项目所在目录和目录下的所有可见文件。

版本库

我的理解:
项目所在的目录下有一个隐藏的目录 .git/ ,这部分相当于就是版本库,也叫仓库。

暂存区

我的理解:
版本库下有个index文件:.git/index ,index相当于暂存区。

远程仓库

我的理解:
远程仓库相当于一个服务器,它提供合作者通过某种协议使用指定的某个版本库,它可以是公开的,也可以是私有的。本地仓库可以通过协议对指定的远程仓库pull和push。

pull和push流程相关的命令

暂存区相关

  1. 从工作区添加文件到暂存区
git add 文件名.后缀
  1. 删除暂存区指定文件
git rm --cached 文件名.后缀
  1. 清空暂存区
//进入到“项目名”下删除
rm .git/index
  1. 查看暂存区的所有文件
git ls-files

版本库相关

  1. 在工作区目录下初始化一个空的版本库
git init
  1. 删除版本库指定文件
git rm 文件名.后缀
  1. 删除版本库(修正:清空版本库
git rm -rf .git

实际操作测试,mac上无法删除.git隐藏目录,可以删除里面的文件和目录,.git目录相当于版本库。

  1. 把暂存区文件的修改提交到版本库
git commit -m "commit注释"

远程仓库相关

  1. 把版本库与目标远程仓库建立确定的联系
git remote add origin git@github.com:用户名/项目名1.git
  1. 把版本库联系更换到另一个目标远程仓库
git remote set-url origin git@github.com:用户名/项目名2.git

利用远程仓库协作开发

  1. 创建工作区,在合适的位置新建一个文件夹,重命名成“工作目录”。

  2. 打开终端,进入到“工作目录”文件夹,输入:

git init

初始化了一个版本库。

  1. 看看本地仓库有哪些分支。
git branch

什么也没有显示。建一个分支看看。

git branch dev

【fatal信息】: Not a valid object name: ‘master’.

报错了,百度一下看看,表明:要先commit之后才会建立master分支,然后才可以建立其它分支。

commit需要有add操作,add一个点看看。

git add .

再看看有没有master分支。

git branch

显示有master分支了。

* master
  1. 建一个本地分支dev,并切换到dev上。
git checkout -b dev
  1. 把版本库与目标远程仓库建立确定的联系。
    先查看是否已建立目标远程仓库关联:
git remote -v

显示没有。add建立目标远程仓库连接。

git remote add origin git@github.com:用户名/项目名2.git
  1. 把本地分支提交到远程仓库。
git push origin dev
  1. 现在可以把项目文件从远处仓库clone下来了。
git clone git@github.com:用户名/项目名1.git
  1. 现在需要把clone下来的项目名1push到项目名2所在仓库的dev分支上。
    需要把远程的分支和本地的分支进行关联。
git branch --set-upstream-to=origin/dev dev

【提示】Branch ‘dev’ set up to track remote branch ‘dev’ from ‘origin’.
说明成功了。
建立关联后,可以使用不带参数的git pull,来拉取对应分支的项目。

  1. 先add、commit一下。
git add .*

【warning】: CRLF will be replaced by LF in serverdemo/gradlew.bat.文件需要有它原始的line ending在工作目录下。
百度一下,了解,执行:

git config --global core.autocrlf false

commit一下。

git commit -m "commit注释"
  1. 再pull一下,最后进行push。
git pull
// 加-f强制推送
git push -u origin dev -f

-u意义: upstream
第10点相当于:
git push origin dev + git branch --set-upstream-to=origin/dev dev

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值