Git 基础


1.Git简单介绍
开源分布式版本控制系统。
不是集中化的版本控制系统。
GIT更倾向于被使用于分布式模式,也就是每个开发人员从中心版本库/服务器上chect out代码后会在自己的机器上克隆一个自己的版本库。
GIT的内容存储使用SHA-1哈希算法。这能确保代码内容的完整性,确保在遇到磁盘故障和网络问题时降低对版本库的破坏。
提供全局的配置管理。
2.Git特性
直接记录快照,而非差异比较
近乎所有操作都是本地执行(离线)
时刻保持数据完整性(SHA1-哈希值)
多数操作仅添加数据
文件的三种状态,工作目录(working directory),暂存区域(staging area),本地仓库(local repository)
3.Git安装
1.地址 http://mysgit.github.com 中提供了mysgit的安装包exe文件,还有图形界面管理工具
2.在eclipse中安装,在market中
3.配置:
   /etc/gitconfig 文件:系统中对所有用户都普遍适用的配置。若使用 git config 时用 --system 选项,读写的就是这个文件。
  ~/.gitconfig 文件:用户目录下的配置文件只适用于该用户。若使用 git config 时用 --global 选项,读写的就是这个文件。
   eg:配置用户信息
  git config --global user.name “xxx”
4.Git基础使用
1.取得项目的git仓库
   a. clone一个远程仓库
   git clone <user>@<server>:/path.git [<projectname>]
    不指定projectname的话,默认使用path命名。
    或者 git clone url ,然后会提示输入账号信息
   b. 在工作目录中初始化一个仓库
      进入到工作目录,执行git init 命令
      如果是服务器版本,用git --bare init(无工作目录)
2. 添加文件,将文件加入暂存区域
   git add [filename]

3.查看当前文件的状态
git status
Changes to be commited --->已经暂存尚未提交的文件。
   Changes not staged for commit--->已经修改还未暂存的文件
   Untracked files--->尚未跟踪的文件
4. 将暂存区域文件提交
git commit –m ‘描述信息’
5. 分支操作
    a. 查看分支 git branch
       默认的是master分支
    b. 基于master创建develop分支并打开
       git checkout -b develop master
    c.基于develop创建feature
       git checkout -b feature-a develop
    d. 切换到develop分支
git checkout develop
    e. 将代码push到远程库
git push origin feature-a
    f. 将feature-a合并到develop上
   先切换分支到develop上,然后执行命令
git merge feature-a
7. commit之后进行删除
    git rm filename 然后再进行commit

  add之后,还未commit进行删除
  a.用版本库内容清空暂存区,git reset HEAD <file>
  b.只把特定文件从暂存区删除,git rm --cache
8.获取更新
   git fetch [remotename] 从远程仓库拉取本地仓库还未有的数据,只是拉到本地仓库,而不是工作目录。
    确定好需要和工作目录合并时,再使用 git merge命令。
   git pull 相当于git fetch + git merge,拉取远程仓库中的代码,然后自动和本地工作目录合并。
9.冲突处理
  a. 当本地还有未提交的文件时,会提示不    merge,需要先commit或者移除文件之后才可以合并。
  b.有冲突并且不能合并,会提示冲突,需要手工解决冲突之后再进行合并。
  需用用远程内容替换本地时:
  c.当处于修改未提交时,采用git checkout HEAD <path>,恢复文件或者一个目录
   当处于修改已经提交时,还原至上一个提交,采用git reset --hard HEAD
j.文件忽略
   .gitignore中加入要忽略的格式

你可能感兴趣的:(git)