Git入门使用

从Git的安装到Git的基础用法

安装Git

Debian8:

$ sudo apt-get install git

初始化

git config –global user.name “Your Name Comes Here” git config –global user.email  you@yourdomain.example.com

新建仓库

  1. 用cd打开到项目的目录
  2. $ git init #创建仓库, 会得到 Initialized empty Git repository in .git/
  3. $ git add . #将当前所有文件给git管理
  4. $ git commit #提交更改

查询状态

git status #查询当前的文件状态(用-s参数显示简要信息) git log #显示历史修改情况(修改时间,修改描述)

git log -p #显示详细日志(包括修改的部分) git log –stat –summary #显示摘要(除默认显示外还包括修改量)

提交修改

  1. $ git add files… #标记要提交的文件
  2. $ git diff –cached(与staged效果相同) #显示修改的内容(可选操作)
  3. $ git commit #提交修改(可以用 -m ‘MESSGAE’ 参数直接输入版本说明)

也可以

  1. $git commit -a #直接提交所有修改,不需要用-a标记

忽略文件

如果不希望git注意到某些文件(甚至不显示untracked),可以创建一个 .gitignore文件,文件的示例如下:

# no .a files
*.a

# but do track lib.a, even though you're ignoring .a files above
!lib.a

# only ignore the TODO file in the current directory, not subdir/TODO
/TODO

# ignore all files in the build/ directory
build/

# ignore doc/notes.txt, but not doc/server/arch.txt
doc/*.txt

# ignore all .pdf files in the doc/ directory and any of its subdirectories
doc/**/*.pdf

 

分支管理

git branch #显示分支列表 git branch  NAME #创建分支

git branch -d NAME #删除分支(将会检查分支中的代码是否合并) git branch -D NAME #删除分支(不会检查是否合并)

git checkout NAME #选择分支 git merge NAME #将NAME分支合并到当前分支

当出现合并冲突时(如对同一个位置进行了不同的修改)

$ git diff #查看冲突的位置

同时也会在文件中标记冲突,格式如下

++<<<<<<<< HEAD

+当前分支的内容

++===========

+  被合并分支的内容

++>>>>>>>>>>>>>

这时需要编辑文件解决冲突并commit(不需要重新merge)

协作管理

git clone [其它用户的项目路径] [仓库的名字(可选,如果没有则是原来的名字)] #将当前系统下其它用户的库正在操作的分支复制到当前目录下 git pull [其它用户的项目路径]  [分支的名字] #将其他用户的分支合并到指定的分支

项目路径有以下几类

  • 本地磁盘上储存的其他仓库
  • ssh连接到远程服务器,格式为:user@host : [diskPath]
  • url链接,如:https://github.com/libgit2/libgit2

远程服务器

git remote #查看远程服务器列表 git add [shortname] [url] #添加url所指的仓库,并命名为shortname

 

 

 

 

 

《Git入门使用》上有2条评论

发表评论

邮箱地址不会被公开。