Git常用命令总结

前言

git和github:git是目前世界上最先进的分布式版本控制系统(对比集中式版本控制系统SVN)。github是一个免费的代码远程托管仓库。

几个概念:
(1)工作区:当前存放项目代码的目录;
(2)暂存区:git add把工作区修改的内容添加到暂存区当中;
(3)本地仓库:git commit把本地暂存区的修改提交到本地代码仓库分支中(不同分支代表不同的代码版本);
(4)远程仓库:通过git push把本地仓库的某一个分支上的代码推送到远程仓库的某个分支上;
(5)HEAD指针:本地仓库每一个分支上的代码修改都会生成一个commit id信息,HEAD指针指向最近一次的commit提交,通过这个commit id可以进行版本回退。
在这里插入图片描述

git基本操作

1.git add

git add命令可以把本地修改的代码或者文件,添加到本地暂存区

2.git commit

通过git commit提交命令,把修改的代码文件,从暂存区提交到本地的master分支上去(实际上当我们第一次用git clone拉取远程master分支的代码时,本地也创建了一个master分支,保存用户修改后需要提交的代码,分布式嘛,每个机器上都可以维护一个代码仓库!)

git commit -m "xxx" //把暂存区的代码提交到本地分支

3.git push

通过git push命令,把本地master分支上的所有代码,都推送到远程master分支上去了(俗称“合代码”),通过git log,可以查看修改日志

//本地分支推送到远程分支:
git push <远程仓库名> <本地分支名>:<远程分支名> 

4.git fetch和git pull

通过git pull命令拉取github仓库上项目的最新代码,然后基于最新的代码进行修改(注意:当修改代码前,执行一下git pull命令是一个好习惯!),事实上,git pull是相当于从远程仓库获取最新版本,然后再与本地分支merge(合并)。

//即:
git pull = git fetch + git merge

注:git fetch不会进行合并,执行后需要手动执行git merge合并,而git pull拉取远程分之后直接与本地分支进行合并。更准确地说,git pull是使用给定的参数运行git fetch,并调用git merge将检索到的分支头合并到当前分支中。

----》相比起来,git fetch更安全也更符合实际要求,因为可以在merge前,我们可以查看更新情况,根据实际情况再决定是否合并。
-----》参考于思否

git分支操作

1.git branch

查看本地分支:git branch
查看远程分支:git branch -r
创建分支(本地): git branch name
删除本地分支: git branch -d name
例如:git branch -d sortdev可以删除该分支;
查看本地分支和远程分支的追踪关系:git branch -vv

2.git checkout

切换分支: git checkout name
创建+切换分支: git checkout -b name
例如:git checkout -b sortdev就是创建一个新的本地分支sortdev并切换到该分支;

3.git merge

git merge name 合并某分支到当前分支

git子项目操作

git submodule

(1)什么是Submodule?

git Submodule 是一个很好的多项目使用共同类库的工具,他允许类库项目做为一个单独的git项目存在父项目中,子项目可以有自己的独立的commit,push,pull。而父项目以Submodule的形式包含子项目,父项目可以指定子项目header,父项目中会的提交信息包含Submodule的信息,在clone父项目的时候可以把Submodule初始化。

(2)在项目中使用Submodule
使用git命令可以直接添加Submodule:

git submodule add git@github.com:jjz/pod-library.git pod-library

(3)git Submodule详解参考

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值