2019独角兽企业重金招聘Python工程师标准>>>

远程仓库是用来把Git仓库托管到互联网,本地网络或者本机中。

本文主要介绍在本机中创建远程仓库(Remote repositories)。

1.创建一个本地远程仓库

使用git clone --bare来创建一个本地远程仓库。

[cpp] view plaincopy

  1. #1个点表示当前目录,2个点表示父目录

  2. $ git clone --bare . ../remote-jackygit.git

  3. Cloning into bare repository '../remote-jackygit.git'...

  4. done.

然后就可以看到父目录下有个文件夹remote-jackygit.git,里面包含了原来版本库中的.git文件夹。

那工作区文件呢?一个标准的git仓库包含了源代码和历史信息,因为我们可以在上面直接修改代码。但是远程仓库只有历史信息,并没有源代码。

2.推送更改到远程仓库

使用git push推送到远程仓库

[cpp] view plaincopy

  1. #修改Jackydata01

  2. $ echo "HelloRemoteJackyRepo" > JackyData01

  3. #提交更改

  4. $ git commit -a -m "modify to remotejackyrepo"

  5. [master e14f4a3] modify to remotejackyrepo

  6. 1 file changed, 1 insertion(+), 1 deletion(-)

  7. #推送到远程仓库

  8. $ git push ../remote-jackygit.git

  9. Counting objects: 5, done.

  10. Delta compression using up to 2 threads.

  11. Compressing objects: 100% (2/2), done.

  12. Writing objects: 100% (3/3), 282 bytes | 0 bytes/s, done.

  13. Total 3 (delta 1), reused 0 (delta 0)

  14. To ../remote-jackygit.git

  15. 03150c9..e14f4a3  master -> master

3.添加远程仓库

我们可以用URL来表示一个远程仓库,但是如果这个URL很长,每次推送岂不是很麻烦。所以可以在添加远程仓库的时候顺便给它取个名字。

添加远程仓库使用git remote add。这里我们给这个远程仓库取名叫testremote,以后我们就可以用testremote来替代remote-jackygit这个远程仓库了。

[cpp] view plaincopy

  1. #添加一个远程仓库,取名为testremote

  2. $ git remote add testremote ../remote-jackygit.git

4.查看远程仓库信息

这里使用git remote,git remote -v和git remote show即可。

[cpp] view plaincopy

  1. #查看远程仓库

  2. $ git remote

  3. testremote

  4. #查看远程仓库详细信息

  5. $ git remote -v

  6. testremote      ../remote-jackygit.git (fetch)

  7. testremote      ../remote-jackygit.git (push)

  8. #查看远程仓库详细信息

  9. $ git remote show testremote

  10. * remote testremote

  11. Fetch URL: ../remote-jackygit.git

  12. Push  URL: ../remote-jackygit.git

  13. HEAD branch: master

  14. Remote branch:

  15. master tracked

  16. Local ref configured for 'git push':

  17. master pushes to master (up to date)

5.克隆仓库

把一个远程仓库克隆到本地,,还是一样使用git clone命令。

[cpp] view plaincopy

  1. #返回上级目录

  2. $ cd ..

  3. #新建jackygit2目录

  4. $ mkdir jackygit2

  5. 进入jackygit2目录

  6. $ cd jackygit2

  7. #将远程仓库克隆到当前目录(jackygit2)

  8. $ git clone ../remote-jackygit.git .

  9. Cloning into '.'...

  10. done.

不过这回源码和历史记录都会被克隆进jackygit2中,并且remote-jackygit也是jackygit2的远程目录,初始名字为origin。

6.Push和Pull

这时我们有3个仓库了。2个本地仓库(jackygit和jackygit2),1个远程仓库(remote-jackygit)。

如果我们修改了jackygit,那么jackygit2怎么才能获取到最新的版本呢?

(1)Push:jackygit先将修改内容推送给远程仓库。

[cpp] view plaincopy

  1. #修改JackyData01内容

  2. $ echo "Hi Jackygit2" >jackydata01

  3. #提交更改

  4. $ git commit -a -m "hi jackygit2"

  5. [master 6937dbd] hi jackygit2

  6. 1 file changed, 1 insertion(+), 1 deletion(-)

  7. #推送到远程仓库,这里就可以直接使用testremote

  8. $ git push testremote

  9. Counting objects: 5, done.

  10. Delta compression using up to 2 threads.

  11. Compressing objects: 100% (2/2), done.

  12. Writing objects: 100% (3/3), 267 bytes | 0 bytes/s, done.

  13. Total 3 (delta 1), reused 0 (delta 0)

  14. To ../remote-jackygit.git

  15. 8ad0c22..6937dbd  master -> master

(2)Pull:jackygit2从远程仓库中拉取最新版本。

[cpp] view plaincopy

  1. #进入jackygit2目录

  2. $ cd ../jackygit2

  3. #拉取远程仓库最新版本

  4. $ git pull origin

  5. remote: Counting objects: 5, done.

  6. remote: Compressing objects: 100% (2/2), done.

  7. remote: Total 3 (delta 1), reused 0 (delta 0)

  8. Unpacking objects: 100% (3/3), done.

  9. From d:/jackygit2/../remote-jackygit

  10. 8ad0c22..6937dbd  master     -> origin/master

  11. Updating 8ad0c22..6937dbd

  12. Fast-forward

  13. Jackydata01 | 2 +-

  14. 1 file changed, 1 insertion(+), 1 deletion(-)

  15. #查看版本库状态,干净的

  16. $ git status

  17. # On branch master

  18. nothing to commit, working directory clean

7.移除远程仓库

移除远程仓库使用git remote rm即可。

[cpp] view plaincopy

  1. #移除testremote

  2. $git remote rm testremote

8.注意

如果在使用git push的时候,出现如下警告:

warning: push.default is unset; its implicit value is changing in Git 2.0 from 'matching' to 'simple'......

意思是push.default没有设置,使用如下设置即可。作用及其他设置请自行google。

[cpp] view plaincopy

  1. git config --global push.default simple

转载于:https://my.oschina.net/xiaoxiao23/blog/190520

【Git入门之六】远程仓库相关推荐

  1. git 无法 push 远程仓库 【Note about fast-forwards】

    git 无法push远程仓库 Note about fast-forwards 提出问题 基本介绍 解决方案 提出问题 git push 远程仓库时,经常报出如下错误,导致无法将本地仓库中的内容提交到 ...

  2. git 本地与远程仓库出现代码冲突解决方法

    git 本地与远程仓库出现代码冲突解决方法 参考文章: (1)git 本地与远程仓库出现代码冲突解决方法 (2)https://www.cnblogs.com/heaven-xi/p/9703566. ...

  3. 使用git拉取远程仓库代码

    git拉取远程仓库代码 引言: 项目需要在阿里云里面拉取代码,本来以为自己会,结果好几歩都出错了,这里记录一下步骤 下载安装好git,打开Git Bash Here,进行初始化三步. 1.git in ...

  4. git添加/删除远程仓库

    注意:仓库只有管理员建的你才有权限上传,不然自己建的也没用,没权限上传 1.远程仓库路径查询 git remote -v 2.添加远程仓库 git remote add origin <你的项目 ...

  5. Git 本地与远程仓库同步操作

    git fetch 做了些什么 git fetch 完成了仅有的但是很重要的两步: 从远程仓库 下载 本地仓库中缺失的 提交记录 更新远程分支指针(假设为 o/master) git fetch 实际 ...

  6. Git撤销对远程仓库的push 或 Git撤销对远程仓库的commit提交

    Git撤销对远程仓库的push 或 Git撤销对远程仓库的commit提交 [一]撤销push 执行 git log 查看日志,获取需要回退的版本号 执行 git reset –-soft <版 ...

  7. git 拉取远程仓库分支代码

    git 拉取远程仓库分支代码 本地新建文件夹作为工作区(存放代码的文件夹) 进入该文件,右键选择 git bush here,打开命令窗后,输入初始化命令:git init 命令行:git remot ...

  8. 使用git同步到远程仓库

    使用git同步到远程仓库 在仓库所在的目录(D:\temp\git\repository)点击右键选择"Git Bash Here",启动git bash程序. 然后在git ba ...

  9. git连接github远程仓库

    一:设置用户名和邮箱 打开Git Bash Here 输入: git config --global user.name '用户名' git config --global user.email '邮 ...

最新文章

  1. 英文VS2010安装中文版MSDN文档方法
  2. ubuntu14.04下出现libmysqlclient.so.20找不到问题
  3. CSS实现英文或拼音单词首字母大写
  4. C#使用Microsoft.ACE.OLEDB.12.0 需要安装的组件
  5. LAMP平台架构浅析
  6. lua按钮unity_在Unity中使用Lua脚本
  7. C# Excel 读写数据
  8. hdu 1284 钱币兑换问题 (递推 || DP || 母函数)
  9. Python常用音频库
  10. Choerodon猪齿鱼实践之角色管理
  11. ag-gird 多层表头文字居中
  12. 使用beeline/hive时,该如何停止打印INFO日志
  13. 可以结束一个循环的关键字是python_python异常处理会使用到哪些关键字?
  14. git 账号密码重置
  15. jstat -gcutil 输出结果分析_助你了解jvm命令,查找JVM堆栈信息,分析性能问题
  16. skipped: maximum number of running instances reached (1)
  17. JAVA开发方向和就业方向
  18. macOS配置java环境
  19. 模块电路选型(1)----电源模块
  20. 系统进化树构建及数据分析的简介

热门文章

  1. 服务网关 - jwt
  2. Educational Codeforces Round 41 (Rated for Div. 2)
  3. 关于button不响应事件
  4. 【风马一族_软件】微软卸载工具_msicuu2.exe
  5. SQL学习精粹之内外连接以及where和on条件的区别
  6. 无锁编程(三) - 忙等待
  7. Exchange server 2007启用 设置pop3
  8. android查看数据库
  9. 问题二:用C++输出第一张图片
  10. 怎样卸载连接老师的计算机软件,我的电脑里面solidworks无法卸载,,老师能帮我下吗...