git的使用方法总结

如果您的公司用的是CVS,那么不用考虑学习git,虽然有的公司用的是mecurial,不过都是分布式版本控制系统,相比之下,git的功能更加的复杂,我们掌握了git,也就自然而然掌握了其他的版本控制软件。

一些废话:git更改后是以快照的方式来保存每个版本,而传统的是保存不同版本的差异

git版本控制下文件的三种状态,commited(已提交) modified(已修改) staged(暂存状态,标记提交但尚未提交,就是你add了但是没有commit的)

➜  mvctest  git config --global user.name "ericzheng"

➜  mvctest  git config --global user.email "cxrhphp@qq.com"

配置好你当前主机对应的用户,只需要配置一次,以后就不用配置了。

➜  mvctest  mkdir git

➜  mvctest  cd git

➜  git  git init

Initialized empty Git repository in /Users/ericzheng/mvctest/git/.git/

➜  git git:(master) git add .

fatal: pathspec '.' did not match any files

创建一个准备使用git控制的文件夹,然后git init就初始化了,我们可以使用这个文件夹作版本控制了

➜  git git:(master) touch a.php

➜  git git:(master) echo "hello" > a.php

➜  git git:(master) git add .

➜  git git:(master) git commit

这时候会到一个VI的编译器的环境,我们输入我们的commit文字,然后就可以按wq保存了

➜  git git:(master) git status

On branch master

 

Initial commit

 

Changes to be committed:

  (use "git rm --cached <file>..." to unstage)

 

new file:   a.php

 

我们可以看到我们刚才提交的新文件

➜  git git:(master) touch b.php

➜  git git:(master) git status

On branch master

 

Initial commit

 

Changes to be committed:

  (use "git rm --cached <file>..." to unstage)

 

new file:   a.php

 

Untracked files:

  (use "git add <file>..." to include in what will be committed)

 

b.php

 

 

这时候我们有没有提交的b.php,我们这时候不想保存changes,我们可以输入以下的命令:

git reset --hard

编辑自己的.gitignore文件

➜  git git:(master) nano .gitignore

➜  git git:(master) cat .gitignore 

.DS_STORE

 

创建我们自己的新分支

➜  git git:(master) git commit -m 'wef'

[master (root-commit) 2467b8a] wef

 2 files changed, 1 insertion(+)

 create mode 100644 .gitignore

 create mode 100644 a.php

➜  git git:(master) git branch

* master

➜  git git:(master) git branch ericzheng

➜  git git:(master) git branch

  ericzheng

* master

➜  git git:(master) 

 

切换分支

➜  git git:(master) git checkout ericzheng

Switched to branch 'ericzheng'

➜  git git:(ericzheng

 

增加标签

➜  git git:(ericzheng) git tag v1.4.2

➜  git git:(ericzheng) git tag

v1.4.2

 

git status

检查文件状态,如果文件没有纳入git管理,会在untracked files列出

git add <filename>

把工作目录下的已修改的文件添加到staged状态

git diff 指示的是处于modified状态的修改内容,处于staged和commited状态的不显示

git rm <filename>强制删除添加-f,从仓库中删除,但保留本地文件

git reset <filename> staged -> modified

git checkout -- <filename> 丢弃修改,恢复到老版本

 

转载于:https://www.cnblogs.com/qianduanlover/p/3955371.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值