共享仓库
 

 
bare 裸仓库
 
生成裸仓库时必须以.git结尾。
 
仓库就相当于一个服务器
 
 
### 创建远程仓库 
1. 创建以.git结尾的目录mkdir repo.git
2. 进入该目录cd repo.git
3. 初始化共享仓库git init --bare
 
> 这样我们就建好了一个共享的仓库,但这时这个仓库是一个空的仓库,并且不允在这个仓库中进行任何修改。
 
### 向共享仓库推送内容
> 将自已开发的项目同步到这个目录中,其它开发者就可以共享你开发的项目了。
 
1. 进入自己的项目跟目录 cd demo
2. git push ../repo.git master
 
> 这样demo项目就进入到了共享仓库中
 
### 从共享仓库取出内容
1. 新创建一个目录example(模拟另一个开发者)
2. 进入该目录cd ./example
2. git clone repo.git
 
通过repo.git共享仓库,我们轻松得到了一个demo的副本
 
 

注意! 克隆的时候随便找一个地方就行,但是往下拉的时候要在本地初始化的这个库里面拉。
 
克隆是克隆的整个文件,而拉的话可以是一个分支。(拉的时候注意路径,要退几层)
 
如果自己修改代码的同时别人也修改了,而且别人先推上去了,那么你提交的之后如果直接提交的话是提交不上去的,因为版本有点低了,此时你应该先拉下来一版(在往下拉的时候要确保你的代码已经提交到本地库里),然后合并在提交。 
 
 
//===============================
给地址起一个别名
git remote add origin ../../hello.git
 
git remote (查看当前仓库都有哪些别名)
 

上面这行代码表示给后面路径的这个文件加一个别名
  
在改完别名以后如果想直接推的话执行一下这个命令
就相当于 git push -u origin master  这两个是等效的
上面这个步骤就是建立了跟踪分支
在执行完这以后,在推代码或者 拉代码直接git push 就行了,不用加别名了。
 
git remote show origin
上面这行代码查询放到的是这个文件的绝对路径
 

如果第一次推的是别名的话,以后就不能直接写push来推了,所以在第一次的时候要推荐先写-u。
 
git branch -a  查看所有的分支(包括本地和远程)
git branch 查看本地分支
git branch -r 查看远程分支
 
远程项目名下面的分支名
 
git branch -a  查看所有的分支(包括本地和远程)
 

git checkout -b abc
创建一个分支并且切换过去
 
git merge abc 和并分支
把abc分支合并到主分支
 

要是想把远程的一个分支拉下来,首先应该在本地建一个同名的分支。 
 
想在继续用的话要把这个分支合并到主干里面
 
自己的分支不可以直接推到远程master上,必须自己先合并到本地master上。 
 
然后自己本地的分支可以直接推到远程分支上。
 
如果自己本地的分支直接推到远程分支的话,而远程又没有这个分支,会直接在远程上新建立一个新的分支。
 

在远程建立一个分支并且修改后,此时是比主分支版本要新,因为还没合并。
这时候把这版代码克隆下来,如果要修改这个分支的话,因为先自己建一个同名的分支,此时的分支是基于master键的,没有远程的分支版本新。想要修改还得先合并一下
 
git 高级
在目录里面建一个log文件
来监控日志
创建一个文件(.gitignore)直接创建的话是创建不了的,必须得在sublime创建这个文件。
如果希望log这个文件夹不被传递的话就把log这个文件加进去 
 
 

怎么删除远程分支?用一个空的分支覆盖远程分支。
(冒号前面设置为空,后面加上远程的分支名称)
 

或者
 
比较差异
 
在执行完git difftool 以后提示你 y或者n  输入y
会出现这个框
 

右面是工作目录下的,左边是暂存区的
然后shift+: 进入到底行模式
然后输入q 回车,连续几次,就可以退出道命令行模式了
 
比较与特定提交的差异
 

后面跟的是提交的id
 
初始化的时候和提交时候的差异↑ 会一个文件一个文件的比

 
 

github用法小结的更多相关文章

  1. 转载:Hadoop排序工具用法小结

    本文转载自Silhouette的文章,原文地址:http://www.dreamingfish123.info/?p=1102 Hadoop排序工具用法小结 发表于 2014 年 8 月 25 日 由 ...

  2. [No000010]Ruby 中一些百分号(%)的用法小结

    #Ruby 中一些百分号(%)的用法小结 #这篇文章主要介绍了Ruby 中一些百分号(%)的用法小结,需要的朋友可以参考下 what_frank_said = "Hello!"#% ...

  3. C++ typedef用法小结 (※不能不看※)

    C++ typedef用法小结 (※不能不看※) 第一.四个用途 用途一: 定义一种类型的别名,而不只是简单的宏替换.可以用作同时声明指针型的多个对象.比如:char* pa, pb; // 这多数不 ...

  4. 函数fgets和fputs、fread和fwrite、fscanf和fprintf用法小结 (转)

    函数fgets和fputs.fread和fwrite.fscanf和fprintf用法小结 字符串读写函数fgets和fputs 一.读字符串函数fgets函数的功能是从指定的文件中读一个字符串到字符 ...

  5. 1:CSS中一些@规则的用法小结 2: @media用法详解

    第一篇文章:@用法小结 第二篇文章:@media用法 第一篇文章:@用法小结 这篇文章主要介绍了CSS中一些@规则的用法小结,是CSS入门学习中的基础知识,需要的朋友可以参考下     at-rule ...

  6. 英语语法最终珍藏版笔记- 21it 用法小结

    it 用法小结 it 在英语中的意思较多,用法较广,现总结如下. 一.it作句子的真正主语 1.it 指前面已经提到过的人或事物,有时指心目中的或成为问题的人或事物,作真正主语. 例如: What’s ...

  7. [转]ssh常用用法小结

    ssh常用用法小结 1.连接到远程主机: 命令格式 : ssh name@remoteserver 或者 ssh remoteserver -l name 说明:以上两种方式都可以远程登录到远程主机, ...

  8. 结构体定义 typedef struct 用法详解和用法小结

    typedef是类型定义的意思.typedef struct 是为了使用这个结构体方便.具体区别在于:若struct node {}这样来定义结构体的话.在申请node 的变量时,需要这样写,stru ...

  9. typedef用法小结

    typedef用法小结- - 注意:本文转自网络,版权归原作者所有. typedef typedef用法小结- - 这两天在看程序的时候,发现很多地方都用到typedef,在结构体定义,还有一些数组等 ...

随机推荐

  1. python3 selenium 切换窗口的几种方法

    第一种方法: 使用场景: 打开多个窗口,需要定位到新打开的窗口 使用方法: # 获取打开的多个窗口句柄windows = driver.window_handles# 切换到当前最新打开的窗口driv ...

  2. [刷题]算法竞赛入门经典(第2版) 5-5/UVa10391 - Compound Words

    题意:问在一个词典里,那些单词是复合词,即哪些单词是由两个单词拼出来的. 渣渣代码:(Accepted, 30ms) //UVa10391 - Compound Words #include<i ...

  3. 【SoDiaoEditor电子病历编辑器】阶段性更新啦

    转眼距离上一次v2正式发布已经过去一个半月了.github期间不定期push了二十几次,同时感谢分布在广州.福建.上海.北京的一众小伙伴,正是你们给出的建议,才让SoDiaoEditor不断完善. 我 ...

  4. SQLite 之 C#版 System.Data.SQLite 使用

    简介 SQLite简介 SQLite,是一款轻型的关系型数据库.它的设计目标是嵌入式. 它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 C++.C ...

  5. MyBatis源码解读(3)——MapperMethod

    在前面两篇的MyBatis源码解读中,我们一路跟踪到了MapperProxy,知道了尽管是使用了动态代理技术使得我们能直接使用接口方法.为巩固加深动态代理,我们不妨再来回忆一遍何为动态代理. 我相信在 ...

  6. Javascript性能优化之节流函数

    在我们的工作中往往有这样的需求,下拉上拉加载实现无限加载列表数据这样的一个功能,这个时候小伙伴们可能就觉得这个功能几分钟的事,于是乎,下边这段代码浩浩荡荡就出来了 window.addEventLis ...

  7. java关键字transient与volatile小结

    本文转自:http://heaven-arch.iteye.com/blog/1160693 transient和volatile两个关键字一个用于对象序列化,一个用于线程同步,都是Java中比较高阶 ...

  8. How to get the file in a resource folder

    In a Maven project, we may often struggle to get a certain file (e.g. json file or sql file). Here i ...

  9. 多线程编程-- part 2 线程的生命周期和优先级

    线程的创建到消亡的历程: java多线程的5种状态: (1)New(新建) new Thread(run()) 该线程还没开始运行,状态是new,在程序运行前还有一些基础工作要做 (2)runnabl ...

  10. 数据库连接之SQL JDBC

    数据库连接之SQL JDBC SQlServer的配置: 1).外围配置服务器中将远程连接设置为:同时使用TCP/IP和named pipes 2).点击该连接->属性->安全性-> ...