转载自:http://blog.csdn.net/lue2009/article/details/46553829

本地仓库内容可以和多个远程仓库同步,本地仓库出问题或者远程仓库其中一个有问题,那么剩余的仓库还是可以使用的,这就是分布式管理的魅力所在 ! O(∩_∩)O~

说了那么多废话,下面我们开始具体的操作:

(1) 先在github.com或bitbucket.org 创建一个仓库,仓库名就是项目名(一般有依赖工程,都放在这个项目名里面的)

(2) 切换到你的本地Git仓库

Eg: cd到当前AS项目目录下,执行git init

$ cd  /f/AndroidStudioWks/newelderly_bj

$ git init

执行完git init后 会在当前目录产生 .git 文件夹(如果之前有执行过git init 就会有.git文件夹,那就不必执行git init,git init 命令执行一次就可以,注意不要重复执行)

(3) 查看本地仓库是否有远程仓库

$ git remote -v

如果本地仓库是刚创建的是,执行命令后是没有任何结果的。 
如果是通过git clone的方式创建的,那么此时就会显示 origin 
执行git命令时当前目录必须在 git 仓库目录(除了git init命令外)之内,否则会提示:

Fatal:Not a git repository (or any of the parent diretories): .git

为当前AS项目本地仓库添加添加远程仓库,(可以添加多个远程仓库)

要添加一个新的远程仓库,可以指定一个简单的名字,以便将来引用,执行命令

$ git remote add [shortname] [url]

Eg:

git remote add pb git@bitbucket.org:paul/newelderly_bj.git 

(此url是ssh协议的,本来bitbucket默认是https,这里之前配置ssh访问,所以可以直接写成git@…..

Git支持许多数据传输协议: git://协议,http(s)://协议或ssh协议 
Eg:

git://github.com/paulboone/ticgit.git

https://username@bitbucket.org/username/xxx.git

ssh://git@bitbucket.org/username/xxxx.git (git@bitbucket.org:username/xxxxx.git )

(5) 执行 git remote -v 查看当前远程仓库

$ git remote

可以加上 -v 选项(译注:此为 –verbose 的简写,取首字母),显示对应的克隆地址

如果有多个远程仓库,此命令将全部列出。

比如在 Grit 项目中,可以看到:

$ cd grit
$ git remote -v
bakkdoor git://github.com/bakkdoor/grit.git
cho45 git://github.com/cho45/grit.git
defunkt git://github.com/defunkt/grit.git
koke git://github.com/koke/grit.git
origin git@github.com:mojombo/grit.git

只有 origin 用的是 SSH URL 链接,所以也只有这个仓库我能推送数据上去,其它的需要密码的。

(6) 将本地文件纳入版本管理中

在纳入版本管理之前,有些文件不需要纳入,那么需要提前在 .gitignore文件指明忽略的文件或文件夹(如果没有此文件则新建)

$ git add <file>

$ git commit -m 'create project'

(7) 推送数据到远程仓库

$ git push [remote-name] [branch-name]

remote-name 是之前添加远程仓库指定的shortname,而branch-name 默认是master

如果不知道当前的最新的branch-name, 可以执行 git status 查看 
Eg:

$git status
On branch master

只有在所克隆的服务器上有写权限,或者同一时刻没有其他人在推数据, 
这条命令(git push)才会如期完成任务。如果在你推数据前,已经有其他人推送了若干更新,那你的推送操作就会被驳回。 
你必须先把他们的更新抓取到本地,合并到自己的项目中,然后才可以再次推送。

(8) 远程仓库抓取数据

$ git fetch [remote-name]

fetch 命令只是将远端的数据拉到本地仓库,并不自动合并到当前分支

(9) 查看远程仓库信息

$ git remote show [remote-name]

会显示出: 远程分支有哪些分支没同步到本地; 本地仓库缺省推送的分支是什么

(10) 远程仓库的删除和重命名

远程仓库重命名

$ git remote rename [old_remote-name] [new_remote-name]

重命名后远程分支名会发生变化 Eg:pb/master -> paul/master

远程仓库的删除

$ git remote rm [remote-name]
 

本地Git仓库同步到Bitbucket 远程Git仓库的更多相关文章

  1. 本地仓库 同步到 bitbucket 远程git库

    http://blog.csdn.net/lue2009/article/details/46553829 配置ssh连接: http://blog.csdn.net/lue2009/article/ ...

  2. 使用git将本地仓库同步到github远程仓库

    一.下载安装git客户端windows版本 二.建立本地仓库文件夹 三.在本地仓库里右键点击Git Bash Here 四.初始化本地仓库 [git init] 执行之后仓库中会创建隐藏的文件夹.gi ...

  3. GIT 如何合并另一个远程Git仓库的文件到本地仓库里某个指定子文件夹并不丢失远程提交记录?

    问题背景:     最近在重新整理手中的一个项目,目前该项目分为PC项目,手机项目,某第三方接口项目,第三方接口服务项目和手机项目     因为之前规划的原因,原来的四个项目是分两个解决方案来管理的 ...

  4. 2018-01-28-M个本地工作点代码同步到N个GIT远端

    layout: post title: 2018-01-28-M个本地工作点代码同步到N个GIT远端 key: 20180128 tags: IT GIT modify_date: 2018-01-2 ...

  5. SourceTree 将本地已有的git项目推送到远程git仓库

    1.在远程git仓库创建对应的项目: 2.用命令行生成本地的ssh key; 3.把公钥粘贴远程仓库对应的位置: 4.SourceTree 设置远程仓库的地址: 5.把本地对应的分支推送到远程仓库: ...

  6. Git创建本地分支并推送到远程github仓库

  7. IntelliJ IDEA 使用 Git 并将 GitHub 作为远程代码仓库

    安装本地Git 官方下载地址:http://git-scm.com/downloads 不过这个地址一般下不动,我们可以选择在腾讯软件中心下载,速度很快. 腾讯软件中心的下载地址:https://pc ...

  8. 【Git/GitHub学习笔记】基本操作——创建仓库,本地、远程同步等

    近日想分享一些文件,但是用度盘又太麻烦了(速度也很恶心).所以突发奇想去研究了下GitHub的仓库,这篇文章也就是一个最最最基础的基本操作.基本实现了可以在GitHub上存储文本信息与代码. 由于我的 ...

  9. git 如何同步本地tag与远程tag

    问题场景:同事A在本地创建tagA并push同步到了远程->同事B在本地拉取了远程tagA(git fetch)->同事A工作需要将远程标签tagA删除->同事B用git fetch ...

随机推荐

  1. phpcms的验证码替换 及 phpcms实现全站搜索功能

    在使用phpcms替换网页的时候,除了正常的替换栏目.内容页等,其他的什么验证码啦,提交表单了,搜索功能了,这些在替换的时候可能会对一些默认文件有一些小小 的改变 下面就是自己在失败中成功的过程,最后 ...

  2. Netty之粘包分包

    粘包现象 客户端在一个for循环内连续发送1000个hello给Netty服务器端, Socket socket = new Socket("127.0.0.1", 10101); ...

  3. 大数据学习系列之五 ----- Hive整合HBase图文详解

    引言 在上一篇 大数据学习系列之四 ----- Hadoop+Hive环境搭建图文详解(单机) 和之前的大数据学习系列之二 ----- HBase环境搭建(单机) 中成功搭建了Hive和HBase的环 ...

  4. Jarvis OJ - [XMAN]level3 - Writeup——ret2libc尝试

    这次除了elf程序还附带一个动态链接库 先看一下,很一般的保护 思路分析 在ida中查看,可以确定通过read函数输入buf进行溢出,但是并没有看到合适的目标函数 但是用ida打开附带的链接库,可以看 ...

  5. java多线程编程核心技术——第三章

    第一节等待/通知机制 1.1不使用等待/通知机制实现线程间的通讯 1.2什么是等待/通知机制 1.3等待/通知机制的实现 1.4方法wait()锁释放与notify()锁不释放 1.5当interru ...

  6. 我的第一个python web开发框架(18)——前台页面与接口整合

    由于我们前后台系统没有分开,所以前台页面调用接口时,可以直接使用后台管理系统已经完成的接口,不过后台管理系统接口的访问加上了登录验证,所以需要将前台要用到的接口进行处理,让它们设置到白名单当中 我们打 ...

  7. 基于winpcap的以太网流量分析器(java)

    开发工具 IDE:eclipse -neon JDK:1.8 OS:Win10-64bit 主要功能 1.要求完成一个基于Winpcap的网络流量统计分析系统,具有易用.美观的界面. 2.完成局域网( ...

  8. [乐意黎原创] cuteftp 9 显示中文乱码

    当用FTP连接空间时.中文命名的文件名称会显示乱码,原来是编码设置错误.怎么改动呢? 改动方法例如以下: 选择. 工具--> 全局选项->传输: 1. 传输方法: ASCII 2. SFT ...

  9. ElasticSearch核心知识 -- 索引过程

    1.索引过程图解: api向集群发送索引请求,集群会使用负载均衡节点来处理该请求,如果没有单独的负载均衡点,master节点会充当负载均衡点的角色. 负载均衡节点根据routing参数来计算要将该索引 ...

  10. Java中的包含义

    JAVA提供了强大的应用程序接口,既JAVA类库.他包含大量已经设计好的工具类,帮助程序员进行字符串处理.绘图.数学计算和网络应用等方面的工作.下面简单介绍JAVA核心类库中常用的组建包. 1.jav ...