1分钟学会用git管理代码

转载 2012年03月30日 17:37:53
本文是一个入门级的使用教程,简单介绍最基础的命令,专为想用git而不知从何下手的苦手准备。git是新流行起来的代码管理工具,最著名的应用是linux内核代码管理。Git比SVN好的地方在于两点:轻量级、分布式。其中分布式的意思是Git不需要一个中心服务器,或者说任何一台使用git的电脑都可以当服务器,建立代码库服务器异常简单。

    本文不重点介绍git的安装,简单说一下:在Ubuntu/Debian下直接apt-get:
    sudo apt-get install git-core
    就OK了。目前为止git没有为Windows专门写安装包,如果要在Windows下使用git,需要cygwin,也不麻烦,但本文就不多做说明了。

    以下分两种应用场景来说明git的使用。1. 个人使用,不用建专门的代码服务器。2. 多人维护代码,需要代码建服务器。

    1. 个人使用,不用建专门的代码服务器。
    很简单。假设你的代码放在/home/runningon/project目录下(非空),那么运行:
    git init
    git add .
    git commit -m "init version"

    然后git代码库就建立好了,目录下会多出个.git目录来。git init就是初始化,git add是标记上要添加的文件,"."表示当前目录,此命令会递归标记所有子目录及文件。git commit就是把标记上的文件和修改的文件commit到git库里,-m参数是添加对此次commit的注释,git要求每次commit都必须有注释,如果没有-m参数,将会自动打开一个编辑器(通常是vi或nano)要求输入注释。
    以后,如果修改了文件,则运行
    git commit -m "<comments>"
    就可以将修改反映到git库,将<comments>替换为你想要的注释。
    如果添加了代码文件new_file,则在commit之前运行
    git add new_file
    如果想把代码克隆一份出来,进入你想克隆到的目录运行:
    git clone /home/runningon/project new_project
    注意git clone后有两个参数,第一个参数是源代码目录,也就是含有.git文件夹的目录。第二个参数是要克隆到的目录,如果省略,则会在当前目录下建立一个与源代码目录同名的目录,在本例中就是./project
    克隆出的目录包含克隆前目录的所有代码修改信息,是完全独立的,即之后在new_project下的所有修改与commit都不会影响原project。

    2. 多人维护代码,需要代码建服务器。
    假设代码服务器的IP是10.0.0.2。git默认用ssh作为网络通讯协议,所以在服务器10.0.0.2上安装之:
    sudo apt-get install ssh
    然后添加一个用户,比如code,home目录是/home/code。以code用户登录10.0.0.2,建立一个/home/code/project目录来存放代码。在/home/code/project目录下运行:
    git --bare init
    一条命令就把服务器就建好了,小菜吧。--bare命令是告诉git当前目录不含代码,以后commit时只用保存修改就可以了。
    在本机下载代码与情况1一样:
    git clone /home/code/project new_project
    如果要在另外的电脑下载代码,运行:
    git clone code@10.0.0.2:project 
new_project
    此命令会以ssh方式连接10.0.0.2,如果第一次连接,会询问是否信任该服务器,输入yes后。然后输入code用户的密码就可以了。
    注意git clone后第一个参数的格式,为<用户名>@<服务器IP>:<相对路径>,其中<相对路径>是指相对于<用户名>所在home目录的相对路径,比如此例中,code的home目录是/home/code,那么此例的路径实际为/home/code/project。<相对路径>不能留空或省略,如果代码确实是在home目录下,则<相对路径>是".",不含双引号。要提醒一下的是,如果代码库是空的,会给出警告,不必理会。

    如果在new_project里修改了代码,且添加了新代码new_file,想把这修改commit到服务器上,先运行:
    git add new_file
    git commit -m "<comments>"
    将<comments>替换为你的注释。这样代码就commit到当前机器的new_project了。如果想commit到服务器上,则在new_project目录下运行:
    git push code@10.0.0.2:project 
master
    然后输入code用户的密码。master不是目录名,具体含义本文不作解释。
    如果本机就是服务器,那么IP地址可以写为localhost或127.0.0.1。
    如果觉得每次输入
code@10.0.0.2:project很麻烦,可以为这个URL取个别名my_server:
   git remote add my_server 
code@10.0.0.2:project
    这样前一条git push命令可以写作:
    git push my_server master

    好了,入门级介绍就结束了。进一步的学习可以看:
    官方教程(英文): 
http://www.kernel.org/pub/software/scm/git/docs/gittutorial.html
    官方教程的中译版本: http://www.bitsun.com/documents/gittutorcn.htm


1分钟学会用java发送邮件

今天教大家如何通过java发送邮件,十分的简单易懂,而且能够马上上手。 首先,教大家的方法底层依赖的是javamail,需要的jar包是mail.jar、activation.jar。jar包我会放在...
  • qq619771478
  • qq619771478
  • 2015年10月28日 09:08
  • 1994

新手入门git: 使用git管理自己的代码

git作为一项最近比较火的代码版本控制工具,越来越多的人开始使用。同时git作为一款开源的分布式系统,可以用来管理很大也可以是很小的代码,git还可以用来离线提交代码,这个比较有意思。 提到git,...
  • cai2016
  • cai2016
  • 2016年06月01日 17:34
  • 6854

Git管理本地代码

Ubuntu下git的安装和使用 系统:Ubuntu 15.05 玩开发板的时候要修改很多代码,有增添的有删除的有原基础小修改的,有时还要写一些测试程序,有时甚至要整个项目分好几个版本。原本,我在...
  • zq979999
  • zq979999
  • 2015年08月05日 11:28
  • 1412

记一次高德地图使用学习过程

本文为从简书转移的文章,以后不再在简书上发东西了。学习过程在高德注册个人开发者资质后,查看官方文档。跟着一步一步做,提前下好了Android Studio和SDK等,然后获取高德Key,需要SHA1和...
  • qq_32768743
  • qq_32768743
  • 2017年12月20日 21:27
  • 264

1分钟教你学会用adb进行无线调试

我们经常使用USB来进行ADB的调试。然而,我们有可能用Wi-Fi,请看下面 使你的Android设备和笔记本都连上同一个Wi-Fi网络。其实并不是所有的网络都支持,你也许需要一个支持adb的防火墙配...
  • ykttt1
  • ykttt1
  • 2016年07月28日 20:24
  • 2690

Git 学习初始篇

Gitwhat is Git重点:强大的代码管理工具!为什么使用?重点:使用github社区必备,而且确实方便高效。git与svn区别 svn将代码放于中央服务器;git属于分布式版本控制系统,每个版...
  • Louislip
  • Louislip
  • 2016年11月13日 23:00
  • 942

Windows-Git和Github管理自己代码

以前不知道使用代码管理工具,最后写的一些东西都没有了,由于硬盘坏了或者不小心格式化了之类的,后来使用了Git 和Github来托管自己的代码和读书笔记方便了不少,到哪里只要有网就可以把自己的东西拷贝...
  • jiang314
  • jiang314
  • 2016年02月28日 18:52
  • 539

Android Git代码版本控制

一、选择阿里云code作为项目代码托管 由于Github私有空间需要费用,所有这里选择阿里云code作为代码托管。点击阿里云code,注册账号,新建你要托管的项目空间,阿里云code会给你生成一个Gi...
  • u011459799
  • u011459799
  • 2016年11月22日 13:32
  • 750

Eclipse中使用git管理代码

以前用的是svn,最近使用git管理代码的过程中,出现了一些问题,经过一番折腾,终于解决了,特此记录下来,以便日后参考。 首先需要安装Git 一般情况下使用Eclipse过程中git分为两种:一种是插...
  • u010680097
  • u010680097
  • 2016年04月07日 21:37
  • 1398

阿里云服务器菜鸟使用(一)

作为一个前端,经常做APP,这次心血来潮直接自己买了个云空间 自己搭建服务器,好在公司后端技术哥多,请教一番买了阿里云开始后端搭个数据服务的征程 第一步 ;买服务器,阿里云直接买 选1M带宽,1G...
  • zxc110110
  • zxc110110
  • 2015年11月17日 14:19
  • 2692
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:1分钟学会用git管理代码
举报原因:
原因补充:

(最多只允许输入30个字)