目录

  • 各个模块概念
    • 工作区
    • 版本库
    • 暂存区
    • 远程仓库
  • 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

git pull和push整理和归纳相关推荐

  1. Git pull和push操作

    add commit push命令集合 https://blog.csdn.net/qq_37577660/article/details/78565899?depth_1-utm_source=di ...

  2. ajax提示弹出dev,windows git pull或者push代码时弹出安全框解决办法

    fMRI: spatial smoothing Source: Brain voyager support Theoretical Background Spatial smoothing means ...

  3. Git 常用操作(5)- git clone/git checkout -b/git diff/git push/git pull

    1. git clone--获取远程仓库 当 git fetch 命令从服务器上抓取本地没有的数据时,它并不会修改工作目录中的内容.它只会获取数据然后 让你自己合并. 然而,有一个命令叫作 git p ...

  4. Git 远程分支的pull与push

    远程分支信息查看 git branch -r #查看远程分支git branch -a #查看所有分支,本地和远程git remote show [remote-name] #查看远程仓库信息 其中g ...

  5. linux下,每次git pull 或者git push都需要输入账号密码的问题以及git remote 的一些基本操作

    一.背景 这个问题以前并没有出现过,最近才出现.对比了下,发现以前连接远程仓库用的是git remote加远程仓库url 连接的.而这次试用git clone直接下载的码云上面的,所以才会出现这种差异 ...

  6. 解决git pull/push每次都需要输入密码问题

    如果我们git clone的下载代码的时候是连接的https://而不是git@git (ssh)的形式,当我们操作git pull/push到远程的时候,总是提示我们输入账号和密码才能操作成功,频繁 ...

  7. Git pull[push] 不用每次输入用户名和密码

    2019独角兽企业重金招聘Python工程师标准>>> 网上的很多教程都是使用ssh key来实现免密码操作,其实没那么麻烦,新增一个配置就好了 1.在当前用户目录下新建.gitco ...

  8. Git 技术篇 - 同步代码到github失败,提示non-fast-forward、error: failed to push some refs to问题解决方法,git pull的用法

    因为 github 上仓库里删过一些内容,导致本地的仓库和 github 里的对不上了. 此时用 git push 操作就会报 non-fast-forward,error: failed to pu ...

  9. Git复习(五)之多人协作、git push失败、git pull失败

    多人协作 多人协作时,大家都会往master和dev分支上推送各自的修改. 现在,模拟一个你的小伙伴,可以在另一台电脑(注意要把SSH Key添加到GitHub)或者同一台电脑的另一个目录下克隆: $ ...

最新文章

  1. 程序员请不要问“在吗?”
  2. 杨剑勇:物联网是一个未来概念?其实就在身边
  3. source ubuntu 退出_ubuntu停source、sh、bash、/执行脚本的区别
  4. 如何隐藏sql2000系统表
  5. 【机器学习】 - import cv2 opencv安装python
  6. NLP史上最全预训练模型汇总
  7. swift inheritace 继承
  8. 数组中最大连续子数组和,最大连续子数组积,最大递增子序列
  9. 一机难求:折叠手机是未来趋势还是小众需求?
  10. mysql导入100000000需要多久_mysql做千万条压测数据
  11. html 5个人博客代码模板,5套漂亮的个人博客html模板分享
  12. 三菱je -c中映射表的作用_如何将三菱PLC程序转换成欧姆龙PLC程序?
  13. 《ShareX 》截图神器
  14. 机器学习系列(三)——EM算法
  15. RMVB格式介绍,如何播放该格式视频,以及将RMVB转换成MP4?
  16. windows event log 错误2 的解决办法(电脑网络连接图标消失的罪魁祸首)
  17. 计算机组成原理实验一---运算器 预习报告
  18. python中什么是异常_一文教你读懂 Python 中的异常信息
  19. 刘德华-开心的马骝-国语谐音歌词
  20. 流式凋亡率计算_Annexin V流式检测细胞凋亡的数据分析方法

热门文章

  1. 云场景实践研究第27期:袋鼠云
  2. 001_docker-compose构建elk环境
  3. 【Microsoft Azure学习之旅】测试消息队列(Service Bus Queue)是否会丢消息
  4. Netbackup 7.6新增功能和优势
  5. vsftp socket 报错
  6. 两个精彩的比喻:吞吐量和延迟、信号量和互斥锁
  7. hadoop eclipse plugin windows下载集合
  8. java continue goto_Java中goto和break、continue实现区别
  9. 浮栅场效应管 符号_场效应管主要参数与特点,场效应管与其他管子的对比
  10. html城市绘制,HTML5/Canvas二分法构建城市版图