git init

git init命令用来创建一个新的Git仓储.可以用在一个已经存在的但是没有受Git版本控制的项目,或者用来初始化一个全新的没有任何文件的空仓储.git init通常是你开始一个新的项目时要运行的第一个命令.

运行git init会在你项目的根目录创建一个.git文件夹,这个文件夹里面包含了这个仓储的所有元数据.

用法

git init

把当前目录转成一个Git仓储. 会在你的当前文件夹下面创建一个.git子文件夹,有了它才能记录项目的版本信息.

git init <directory>

在你指定的文件夹创建一个空的Git仓储. 运行后会在你的当前目录下创建你指定的文件夹,这个文件夹除了一个.git子文件夹什么都没有.

git init --bare <directory>

初始化一个空的Git仓储, 而且这个仓储不会有工作目录. 中心仓储(共享仓储)应该都是用--bare创建的裸仓储.通常约定--bare后面的文件夹的名字以.git结尾.例如创建一个名为my-project的裸仓储,这个仓储应该在my-project.git文件夹下面.

讨论

对于大多数项目,git init用来创建一个中心仓储--开发人员通常不使用git init来创建他们自己的本地仓储.开发人员通常使用git clone来copy一个已经存在的仓储到他们本地.

裸仓储(bare仓储)

--bare 用来创建一个没有工作目录的仓储.中心仓储应该要是一个裸仓储,因为push一个分支到一个非裸的仓储的时候会有覆盖修改的风险.可以这样认为--bare标识仓储为一个与开发环境不同的存储设备. 这意味着中心仓储是裸仓储,开发者的本地仓储是非裸仓储.

例子

ssh <user>@<host>
cd path/above/repo
git init --bare my-project.git

首先SSH到你的服务器(这个服务器将包含你的中心仓储). 
然后cd到你想存放仓储的目录.
最后使用--bare创建中心仓储.
开发者将使用clone命令在他们的开发机器上创建一个本地copy

[译]git init的更多相关文章

  1. git init和git init -bare区别

    1 Git init  和 git init –bare 的区别 用"git init"初始化的版本库用户也可以在该目录下执行所有git方面的操作.但别的用户在将更新push上来的 ...

  2. [译]git clone

    git clone git clone命令copy一个已经存在的Git仓储. git clone有点像svn的checkout, 他的不同之处是这个copy也是一个完整的仓储-它有自己的历史纪录, 能 ...

  3. git init 与 git init --bare 的区别

    git init  和 git init –bare 的区别 使用命令"git init --bare"(bare汉语意思是:裸,裸的)初始化的版本库(暂且称为bare repos ...

  4. 初始化仓库(git init)

    创建新的仓库 首先进入需要初始化的目录,然后输入git init D:\Git\test λ git init Initialized empty Git repository in D:/Git/t ...

  5. git init github

    Command line instructions 执行这些命令是在windows 右菜单里面的git bash运行. Git global setup git config --global use ...

  6. git init 与 git init --bare 区别

    git init 与 git init --bare 区别 发现问题 最早是在公司的wiki上发现了这个命令,google后发现值得记录下来 实践中发现的区别 网上找了很多资料,但说的很乱,干脆在自己 ...

  7. git init新建仓库并上传到远端

    git init git add README.md git commit -m "first commit" git remote add origin https://gith ...

  8. git init error:Malformed value for push.default: simple

    git init error:Malformed value for push.default: simple 1.git config --global push.default matching

  9. git init之后,没有.git后缀的文件

    git init之后,打开相关目录没有.git后缀的文件 尝试

随机推荐

  1. 利用TabHost制作QQ客户端标签栏效果(低版本QQ)

    学习一定要从基础学起,只有有一个好的基础,我们才会变得更加的perfect 下面小编将利用TabHost制作QQ客户端标签栏效果(这个版本的QQ是在前几年发布的)…. 首先我们看一下效果: 看到这个界 ...

  2. RabbitMQ 异常与任务分发

    异常情况处理 上篇最后提到了这个问题, consumer异常退出.queue出错.甚至rabbitMQ崩溃.因为它们都是软件 ,软件都会有bug,这是无法避免的.所以RabbitMQ在设计的时候也想到 ...

  3. IDLE快捷键

    Ctrl + Space  完成类.方法.变量名称的自动输入,这个快捷键是我最经常使用的快捷键了,它可以完成类.方法.变量名称的自动录入,很方便.(不过在我的电脑上和输入法冲突) Ctrl + N 快 ...

  4. 跨平台开发之阿里Weex框架环境搭建(二)

    爱编程爱分享,原创文章,转载请注明出处,谢谢! http://www.cnblogs.com/fozero/p/5995195.html 上篇文章(http://www.cnblogs.com/foz ...

  5. Negative log-likelihood function

    Softmax function Softmax 函数 \(y=[y_1,\cdots,y_m]\) 定义如下: \[y_i=\frac{exp(z_i)}{\sum\limits_{j=1}^m{e ...

  6. Hierarchical Softmax

    When predicting over large vocabulary, softmax becomes one of the expensive computation part. There ...

  7. PL/0编译器(java version) – SymbolTable.java

    1: package compiler; 2: //竟然没有对符号表检查大小,会溢出的. 3:   4: import java.io.IOException; 5:   6: public clas ...

  8. Nginx系列5之让Nginx支持HTTP1.1

    preface nginx在反向代理HTTP协议的时候,默认使用的是HTTP1.0去向后端服务器获取响应的内容后在返回给客户端. HTTP1.0和HTTP1.1的一个不同之处就是,HTTP1.0不支持 ...

  9. Visual Studio 当前上下文中不存在名称“ConfigurationManager”

    Visual Studio调试出现错误:当前上下文中不存在名称“ConfigurationManager” 解决方法: 1.System.Configuration引用这个dll参考:http://k ...

  10. 安装和使用Linux花生壳(公网版)

    一.安装说明 1.下载相应的安装包,安装程序 2.运行程序.配置程序(默认使用/etc/phlinux.conf,如果不存在这个文件则自动进入交互配置) [root@localhost -]# phd ...