码迷,mamicode.com
首页 > 其他好文 > 详细

git使用笔记

时间:2015-05-04 22:08:22      阅读:126      评论:0      收藏:0      [点我收藏+]

标签:git

最近项目需要用git来进行版本管理,业务时间整理下git的常用命令。

1、服务器端建立git仓库

[vagrant@localhost ~]$ pwd

/home/vagrant

[vagrant@localhost ~]$ mkdir -p ~/git/gittest.git

[vagrant@localhost ~]$ cd git/gittest.git/

[vagrant@localhost gittest.git]$ git init --bare

Initialized empty Git repository in /home/vagrant/git/gittest.git/


2、开发机上复制新建的git仓库

angel:GitTest $ git clone vagrant@192.168.33.10:~/git/gittest.git

Cloning into ‘gittest‘...

warning: You appear to have cloned an empty repository.

Checking connectivity... done.

angel:GitTest $ ll

total 0

drwxr-xr-x  3 angel  staff  102  5  4 16:09 gittest

3、罗列,添加,删除远端仓库别名

angel:gittest $ git remote add github git@github.com:XXXXX/test.git  #添加远端仓库

angel:gittest $ git remote -v #罗列远端仓库

github git@github.com:XXXXX/test.git (fetch)

github git@github.com:XXXXX/test.git (push)

origin vagrant@192.168.33.10:~/git/gittest.git (fetch)

origin vagrant@192.168.33.10:~/git/gittest.git (push)

angel:gittest $ git remote rm github #删除远端仓库

angel:gittest $ git remote -v

origin vagrant@192.168.33.10:~/git/gittest.git (fetch)

origin vagrant@192.168.33.10:~/git/gittest.git (push)


4、推送数据到远端仓库

git push [alias] [branch]:将本地 [branch] 分支推送成为 [alias] 远端上的 [branch] 分支

angel:gittest $ git push origin master:master 

Counting objects: 3, done.

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

Total 3 (delta 0), reused 0 (delta 0)

To vagrant@192.168.33.10:~/git/gittest.git

 * [new branch]      master -> master

git push origin master:master,这里有2个master,作为新手,往往搞不清楚这2个master的区别。

第一个master是本地branch,第二个master是远程branch,看下面的推送方式会清晰一些。

angel:gittest $ git push origin master:test

Total 0 (delta 0), reused 0 (delta 0)

To vagrant@192.168.33.10:~/git/gittest.git

 * [new branch]      master -> test

如上表示将本地的master分支内容推送到远程origin的test分支。

5、拉取数据到本地

angel:gittest $ git fetch origin

remote: Counting objects: 3, done.

remote: Total 3 (delta 0), reused 0 (delta 0)

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

From 192.168.33.10:~/git/gittest

 * [new branch]      master     -> origin/master

 * [new branch]      test       -> origin/test


值得注意的是,在 fetch 操作下载好新的远程分支之后,你仍然无法在本地编辑该远程仓库中的分支。换句话说,在本例中,你不会有一个新的 test 分支,有的只是一个你无法移动的 origin/test指针。

如果想要一份自己的 test 来开发,可以在远程分支的基础上分化出一个新的分支来:

angel:gittest $ git checkou -b test origin/test

git: ‘checkou‘ is not a git command. See ‘git --help‘.

angel:gittest $ git checkout -b test origin/test

Branch test set up to track remote branch test from origin.

Switched to a new branch ‘test‘


6、导出

angel:gittest $ git tag

ad7b

v1

假设 tag  v1导出,可以按照如下方式导出。

1). 导出并压缩为 zip 格式:

angel:gittest $ git archive --format=zip --output=v1.0.zip v1

2). 导出并压缩为 tar.bz2 格式:

angel:gittest $ git archive v1 | bzip2 > v1.0.tar.bz2

3). 导出并压缩为 tar.gz 格式:

angel:gittest $ git archive v1 | bzip2 > v1.0.tar.bz2


分别生成如下文件

angel:gittest $ ll

total 40

-rw-r--r--  1 angel  staff  231  5  4 22:34 v1.0.tar.bz2

-rw-r--r--  1 angel  staff  224  5  4 22:34 v1.0.tar.gz

-rw-r--r--  1 angel  staff  187  5  4 22:33 v1.0.zip


先写到这里。

git使用笔记

标签:git

原文地址:http://blog.csdn.net/angel22xu/article/details/45481265

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!