GIT基础

建立git仓库

在现有的目录下创建
使用cd命令进入现有项目的目录

git init

这里写图片描述
git的仓库最好添加上LICENSE以及readme文件

git add LICENSE

克隆现有的仓库

顾名思义,就是拷贝的意思,我们可以从网络上拷贝别人的仓库文件到本地,使用clone 命令即可

$ git clone https://github.com/libgit2/libgit2 mylibgit

其中的网站地址是repository的地址,如果命令中没有”mylibgit”,拷贝的文件名为Libgit2,否则就为mylibgit。这句命令在拷贝repository的同时为本地的repository更改了名字。

Git 支持多种数据传输协议。 上面的例子使用的是 https:// 协议,不过你也可以使用 git:// 协议或者使用 SSH 传输协议,比如 user@server:path/to/repo.git 。 在服务器上搭建 Git将会介绍所有这些协议在服务器端如何配置使用,以及各种方式之间的利弊。

检查repository中的文件状态

repository下的文件只可能有两种状态:已跟踪,未跟踪。使用

$ git status

命令可以查看repository下面的文件状态,如下图所示,如果有没有被跟踪文件,就会提示”untracked files”,没有被跟踪的文件需要使用add添加到repository,才能实现跟踪,如图所示
这里写图片描述
再调用一次 “git status”,会发现文件的状态被改变了,变成了

changes to commited:

说明文件已经被跟踪,处于暂存状态。add命令的功能是把文件添加到下一次提交,如果在修改文件之后,不使用add命令,那么该文件的当前版本就会在未跟踪区,修改前的版本在跟踪区。因此文件与add的关系如下:
修改后的文件(或者新建的文件)在未跟踪区->git add filename ->添加到跟踪区

忽略系统自动生成的文件

在使用不同的编译器的时候,有许多系统自动生成的工程文件,如果不想git总是提示未跟踪这些文件,可以使用 cat .gitignore命令

$ cat .gitignore
*.[oa]
*~

这段代码告诉git忽略编译器生成的.o和.a文件,也忽略以波浪线’~’结尾的文件,下面是一些正则表达式,忽略不同的文件

# 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

上面表达式中的#是注释

查看暂存区与工作区的区别

可以使用

git diff

这句命令只能查看上一次add之后暂存区与工作区文件的区别,而不是上一次commit之后暂存区与工作区文件的区别,如果在diff之前add了所有的文件,执行diff以后将看不到任何变化
如果要查看已经提交和暂存区的区别,即下次要commit的内容,可以使用

git diff -staged

提交文件

通常情况下,提交文件有两个步骤,一个是add, 一个是commit,其中add将工作区的文件暂存到暂存区,commit将暂存区的文件提交到repository,但是这样国语繁琐,可以一步到位,使用

$ git commit -a -m "commit in one step"

其中-a参数是跳过add指令,可以将已经跟踪的文件全部提交

删除文件和移动文件

手动删除的文件,在使用git status时会提示,被删除的文件,可以使用

$ git rm filename
$ git mv file_from file_to

第一条命令彻底删除一个文件。finename也可以使用shell的正则表达式方式,删除特定的文件;第二条命令,将file_from移动到file_to

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值