Fork me on GitHub

Git 使用

笔记来源

该笔记来源于git使用网站,如有侵权请联系:sykent.lao@gmail.com

起步

版本管理系统

git: 分布式版本管理系统
svbversion(svn): 集中式版本管理系统(VCS)

git 三种状态

文件状态

三个工作区域
Git 仓库、工作目录以及暂存区域。

初次运行 Git 前的配置与初始命令

用户信息

1
2
$ git config --global user.name "Sykent Lao"
$ git config --global user.email sykent.lao@gmail.com

检查配置信息

1
2
3
4
5
$ git config --list
user.name=John Doe
user.email=johndoe@example.com
color.status=auto
...

查看某一项

1
2
$ git config user.name
John Doe

获取帮助

1
$ git help

基础

获取git仓库

方法
方法一: 现有项目进行项目管理

1
2

$ git init

该命令在项目种产生.git 子目录,只是初始化,并没有进行文件跟踪

文件进行跟踪命令

1
2
$ git add .
$ git commit -m 'initial project version'

方法二: 克隆现有的仓库,命令式clone 区别于svn checkout

1
$ git clone https://github.com/sykent/sykent.github.io.git

重命名

1
$ git clone https://github.com/sykent/sykent.github.io.git sykent

传输协议
支持https:// 超文本传输协议
支持SSH 安全外壳传输协议
支持使用 git://协议

Git文件的生命周期

基本命令

跟踪新文件或暂存已修改文件

git add xxx命令理解:添加内容到下一次提交中,也就是说将未跟踪文件标志为跟踪文件或者将修改的文件更新到暂存区域

1
$ git add xxx

查看文件状态

git status 可查看文件是否为跟踪文件,是否是暂存区文件

1
$ git status

简览

1
$ git status -s

忽略文件

在项目下创建一个名为 .gitignore 的文件

提交更新

属于暂存区的文件可以提交到仓库中,所以提交前执行下git status 命令查看文件状态

1
git commit -m "提交注释"

跳过使用暂存区域
添加-a选项,可以将已经跟踪的文件提交,从而跳过git add 这命令件文件变为已暂存文件才能提交

1
git commit -a -m "提交注释"

移除文件

必须要从已跟踪文件清单中移除(确切地说,是从暂存区域移除)

1
$ git rm xxx

移动文件

该命令像个改名的命令

1
$ git mv file_from file_to

其实是执行了三条命令

1
2
3
$ mv README.md README
$ git rm README.md
$ git add README

查看提交历史

-n 仅显示最近的 n 条提交,–author仅显示指定作者相关的提交。

1
$ git log -2

撤消操作

远程仓库的使用

查看配置的远程仓库服务器
origin - 这是 Git 给你克隆的仓库服务器的默认名字

1
2
$ git remote
origin

选项-v,查看需要读写远程仓库使用的 Git 保存的简写与其对应的 URL。

1
2
3
$ git remote -v
origin https://github.com/schacon/ticgit (fetch)
origin https://github.com/schacon/ticgit (push)

推送到远程仓库

1
$ git push origin master

关联远程repository

1
git remote add origin git@github.com:git_username/repository_name.git

取消本地目录下关联的远程库

1
git remote remove origin

克隆一个仓库到另外一个仓库

  • 从原地址克隆一份裸版本库

    1
    git clone --bare git://github.com/username/project.git
  • 以镜像推送的方式上传代码到新库

    1
    2
    cd project.git
    git push --mirror git@gitcafe.com/username/newproject.git
  • 删除本地代码

    1
    2
    cd ..
    rm -rf project.git
——待续——
------------- End Thank For Your Reading -------------