git基础命令

Posted cqlismy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了git基础命令相关的知识,希望对你有一定的参考价值。

1、如何取得项目的git仓库

取得项目的git仓库具有两种方法:

(1)在工作目录中初始化仓库

在项目的所在的目录下:

$ git init

然后使用git add命令对文件进行跟踪:

$ git add *.c

将修改进行提交:

$ git commit -m "initial project"

(2)从现有的仓库克隆

使用git clone url进行项目克隆:

$ git clone https://github.com/Cqlismy/C.git

 

2、记录每次更新到仓库

(1)项目中文件的变化周期

在一个项目当中,文件的变化周期如下图所示:

技术图片 

(2)检查当前文件的状态

如果想查看当前文件处于什么状态,可以使用git status命令:

$ git status

(3)跟踪新文件

使用git add开始跟踪新的文件:

$ git add README

使用git status查看文件状态,能看到文件被跟踪,并处于暂存状态。

(4)忽略某些文件

创建名为.gitignore的文件,并且列出要忽略文件的模式

文件.gitignore的规范格式如下所示:

1)所有的空行或#开头的行都被git忽略

2)可以使用标准的glob模式进行匹配

3)匹配模式最后以/结尾说明要忽略的是目录

4)要忽略指定模式以外的文件或目录,可以在模式前加!取反

例子:.gitignore文件如下

# 此为注释,将被git忽略

# 忽略以.a结尾的文件
*.a

# 除了lib.a
!lib.a

# 仅仅忽略项目根目录下的TODO文件,不包括dir/TODO
/TODO

# 忽略doc/*.txt,但不包括doc/dir/*.txt
doc/*.txt

# 忽略doc/dir下的所有*.txt文件
doc/**/*.txt

(5)查看已暂存和未暂存的更新

由git status查看文件的情况是比较简单的,要看具体修改了哪些地方,可以使用git diff命令:

$ git diff

(6)提交更新

当暂存区域已经准备好,就可以进行提交了,提交前要使用git status检查所有修改的文件是否已经暂存起来,然后使用git commit命令进行提交:

$ git commit

使用-m参数可以跟提交说明的方式。

(7)跳过使用暂存区域

给git commit添加-a参数,会自动将所有已跟踪过的文件暂存起来一并提 交,从而跳过git add步骤:

$ git commit -a -m "commit files"

(8)移除文件

从暂存区域中移除文件,然后提交文件,可以使用git rm命令:

$ git rm log/\\*.log

(9)移动文件

当需要移动文件或者文件改名,可以使用git mv命令:

$ git mv file_from file_to

 

3、查看提交历史

提交了更新之后,可以使用git log查看提交的日志:

$ git log

 

4、撤销操作

有时候在项目中,我们可能需要撤销某些操作。

(1)修改最后一次提交

可以使用下面的命令进行重新提交:

$ git commit --amend

例如,提交时忘记了暂存某些修改,修改最后一次提交:

$ git commit -m "initial commit"
$ git add forgotten_file
$ git commit --amend

(2)取消已经暂存的文件

使用下面命令,文件将会到未暂存状态:

$ git reset HEAD <file>

(3)恢复已经修改的文件

当项目文件被修改了,但是感觉没必要时,可以使用下面命令恢复之前状态:

$ git restore <file>

 

5、远程仓库的使用

 远程仓库是指托管在网络上的项目仓库,同他人协作开发某个项目时,需要管理远程仓库,以便推送或拉取数据,分享各自的工作进展。

(1)查看当前的远程仓库

下面的命令可以查看远程仓库,-v选项显示对应的克隆地址:

$ git remote -v

(2)添加远程仓库

添加一个新的远程仓库,可以指定一个简单的名字,以便将来引用,使用下面命令:

$ git remote add [shortname] [url]

例如下面的例子,创建新的远程仓库,并修改文件,提交并推送:

$ git remote add pb git@github.com:Cqlismy/myGitTest.git
$ git remote -v
$ vim hello.c
$ git commit -a -m "modified hello.c"
$ git push pb

(3)远程库抓取数据

下面的命令将从远程仓库上抓取数据:

$ git fetch [remote-name]

(4)远程库推送数据

下面的命令将数据推送到远程仓库:

$ git push [remote-name] [branch-name]

例如,把本地的master分支推送到origin服务器上:

$ git push origin master

(5)查看远程库

查看某个远程仓库的详细信息:

$ git remote show [remote-name]

(6)远程库名重新命名和修改

使用下面命令修改某个远程仓库在本地的简称,如把pb修改为paul:

$ git remote rename pb paul

要删除某个远程仓库:

$ git remote rm [remote-name]

 

6、小节

本文主要简单介绍了一些常用的git基础命令。

 

参考:

http://iissnan.com/progit/

以上是关于git基础命令的主要内容,如果未能解决你的问题,请参考以下文章

git基础教程(11) Git 命令别名

Git的常见基础操作命令

Git 基础命令

Git 基础命令

git的一些基础命令

git常用情景和基础命令