git 本地远程仓库

学习或测试一些git命令的效果,你可以使用github这种服务商,也可以自己建立服务器仓库。而后者更方便、快捷也更能体会git到底是什么。

 

1.新建git远程本地仓库文件夹

 

# 切换目录
$ cd /Users/lnj/Desktop/git演练/公司/weibo                                                 
 % git init --bare                                 
Reinitialized existing Git repository in /home/matt/git/testgit.git/
 % ls                                               
branches/  config  description  HEAD  hooks/  info/  objects/  refs/

通过ls命令可以看出:git init --bare 初始化的目录等同于一个.git目录的内容。这样就比较好理解git的本质:本地仓库的.git和服务器仓库。它们是一回事情。

 

# 建立空白代码库

$ git init --bare

注意:这个仓库仅仅是用于管理代码,不参与开发

 

2.项目经理初始化项目

 

2.1先克隆一份空的仓库到本地

git clone 远程本地仓库文件夹目录

 

# 切换目录

$ cd /Users/lnj/Desktop/git演练/经理

# "克隆"代码库到本地

$ git clone /Users/lnj/Desktop/git演练/公司/weibo/

# 个人信息配置(因为要演示一台机器上的多人协作,日常开发可以忽略)

$ git config user.name manager

$ git config user.email [email protected]

 

2.2忽略不需要加入版本控制器的文件以及文件夹

 

echo -e "# Compiled class file

*.class

 

# Log file

*.log

 

# BlueJ files

*.ctxt

 

# Mobile Tools for Java (J2ME)

.mtj.tmp/

 

# Package Files #

*.jar

*.war

*.ear

*.zip

*.tar.gz

*.rar

 

# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml

hs_err_pid*" > .gitignore

 

 

注意:配置忽略文件只需要到github上搜索。gitignore拷贝别人写好的代码即可

          https://github.com/github/gitignore/blob/master/Java.gitignore

          配置。gitignore一定要在和.git隐藏文件夹同一级的目录下

 

 

2.3 生成好的.gitignore文件之后,还需要将.gitignore文件添加到版本控制

 

# 将.gitignore添加到代码库

$ git add .gitignore

git commit .gitignore -m "配置忽略文件"

 

2.4 新建项目

 

 commit 将代码提交到本地仓库

 push 将代码提交到远程仓库

 

git中默认就会创建一个分支,这个分支叫做origin/master

 

% mkdir -p ~/tmp/testgit
% cd ~/tmp/testgit
% git init                                               
Initialized empty Git repository in /home/matt/tmp/testgit/.git/       
% touch README               
 % git add .                                        
 % git commit -m "initial commit"      
[master (root-commit) 02ecfad] initial commit                                       
 0 files changed                                                                   
 create mode 100644 README                                                           
 % git remote add origin localhost:/home/matt/git/testgit.git                         
 % git push -u origin master                  
Counting objects: 3, done.                                                            
Writing objects: 100% (3/3), 205 bytes, done.                                         
Total 3 (delta 0), reused 0 (delta 0)                                                 
To localhost:/home/matt/git/testgit.git                                               
 * [new branch]      master -> master                                                 
Branch master set up to track remote branch master from origin. 

 

 

* 如果想把本地的某个分支test提交到远程仓库,并作为远程仓库的master分支,或者作为另外一个名叫test的分支,如下:
$ git push origin test:master         // 提交本地test分支作为远程的master分支
$ git push origin test:test              // 提交本地test分支作为远程的test分支

 

查看当前的远程库

 

要查看当前配置有哪些远程仓库,可以用 git remote 命令,它会列出每个远程库的简短名字.在克隆完某个项目后,至少可以看到一个名为 origin 的远程库,Git 默认使用这个名字来标识你所克隆的原始仓库:

(1)git remote 不带参数,列出已经存在的远程分支

  $ git remote

  origin

 

(2)git remote -v | --verbose 列出详细信息,在每一个名字后面列出其远程url

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

  $ git remote -v

  origin git://github.com/schacon/ticgit.git如果有多个远程仓库,此命令将全部列出.比如在我的 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 这样一来,我就可以非常轻松地从这些用户的仓库中,拉取他们的提交到本地.请注意,上面列出的地址只有 origin 用的是 SSH URL 链接,所以也只有这个仓库我能推送数据上去

 

添加远程仓库

  要添加一个新的远程仓库,可以指定一个简单的名字,以便将来引用,运行 git remote add [shortname] [url]:

  $ git remote

  origin

  $ git remote add pb git://github.com/paulboone/ticgit.git

  $ git remote -v

  origin git://github.com/schacon/ticgit.git

  pb git://github.com/paulboone/ticgit.git现在可以用字串 pb 指代对应的仓库地址了.

 

 

 

猜你喜欢

转载自liweirr789.iteye.com/blog/2387128