`
Iam42
  • 浏览: 272970 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Github使用技巧(1)

 
阅读更多

一.什么是Github

    Git是一个分布式的版本控制器,客户端并不只提取最新版本的文件快照,而是把原始的代码仓库完整地镜像下来。也就是说,即便服务器的磁盘发生故障,用任何一个克隆出来的客户端都可以重建服务器上的仓库,回到当初克隆时的状态。

     当新版本提交后,Git 并不保存这些前后变化的差异数据。而是当每次提交更新时,它会纵览一遍所有文件的指纹信息并对文件作一快照,然后保存一个指向这次快照的索引。

 

二.Github中文件的三种状态

    在 Git 内都只有三种状态:已提交(committed),已修改(modified)和已暂存(staged)。已提交表示该文件已经被安全地保存在本地数据库中了;已修改表示修改了某个文件,但还没有提交保存;已暂存表示把已修改的文件放在下次提交时要保存的清单中。

    基本的 Git 工作流程如下所示:

1) 在工作目录中修改某些文件。

2)对这些修改了的文件作快照,并保存到暂存区域。

3)提交更新,将保存在暂存区域的文件快照转储到 git 目录中。

 

三.Github具体操作

1.安装git

apt-get instal git-core

 

2.从当前目录初始化

   要对现有的某个项目开始用 Git 管理,只需到此项目所在的目录,执行一下命令,不过这时我们还没有开始跟踪管理项目中的任何一个文件。

git init

 

3.从现有仓库克隆

git clone + URL

 

4.跟踪新文件

git add 文件名

 

5.暂存已修改文件

git add 文件名

   git add 是个多功能命令,根据目标文件的状态不同,此命令的效果也不同:可以用它开始跟踪新文

件,或者把已跟踪的文件放到暂存区,还能用于合并时把有冲突的文件标记为已解决状态等。

 

6.提交更新

git commit

 只要在提交的时候,给git commit加上-a 选项,Git就会自动把所有已经跟踪过的文件暂存起来一并提交,从

而跳过git add 步骤。

 

7.查看文件状态

git status

      暂存状态:

$ git status
# On branch master
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# new file: README
#

     未追踪状态

# On branch master
# Untracked files:
# (use "git add <file>..." to include in what will be committed)
#
# README
nothing added to commit but untracked files present (use "git add" to track)

     已修改但未暂存状态

$ git status
# On branch master
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# new file: README
#
# Changed but not updated:
# (use "git add <file>..." to update what will be committed)
#
# modified: benchmarks.rb
#

 

 8.查看远程服务器上的github仓库

git remote

会列出每个远程库的简短名字。在克隆完某个项目后,至少可以看到一个名为 origin 的远程库,Git 默认使用这个名字来标识你所克隆的原始仓库。也可以加上-v 选项(译注:此为 —verbose 的简写,取首字母),显示对应的克隆地址。

 

 9.添加远程仓库

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

 

 10.从远程仓库抓取信息

 要抓取所有 Paul 有的,但本地仓库没有的信息,可以运行git fetch 【远程仓库名】。git fetch origin 会抓取从你上次克隆以来别人上传到此远程仓库中的所有更新。

 

 11.推送数据到远程仓库

     项目进行到一个阶段,要同别人分享目前的成果,可以将本地仓库中的数据推送到远程仓库。实现这个任务的命令很简单:git push [remote-name] [branch-name]。如果要把本地的 master 分支推送到origin 服务器上(克隆操作会自动使用默认的master 和 origin 名字),可以运行下面的命令:

$ git push origin master

-------------------------------------------------------------------------

参考文献:

《pro git》中文版本

  • 大小: 22.5 KB
1
1
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics