Git常见操作

2019-04-05  本文已影响0人  wangyan66

最近想总结下git的各种操作,于是有了这篇博客。


分布式与集中式

首先简单的了解了下分布式与集中式的概念。

集中式

集中式是指版本库都在中央服务器上,任何人想要修改代码都需要先联网,从中央服务器下载代码,然后修改完再推送给中央服务器合并。

集中式的弊端就是必须得联网,如果网速慢就很痛苦。加上由于集中的原因,代码不够安全(没有备份),服务器一旦瘫痪所有人都不能下载。

这边我自己有个疑问,既然都下载了,不应该就有备份了吗?而且分布式推送的时候不也要联网吗?

分布式

分布式是指每个人电脑上都有代码库,两个人只需要将各自的修改推送给对方就能知道对方的代码修改了。(个人理解在企业内部十分方便)假设两台电脑不在一个局域网,就需要一台充当中央服务器的电脑,其存在只是为了方便交换修改代码。


Git常见指令

本地指令

git init  把当前目录变成git可管理的仓库

git add README.txt 把目录下的文件添加到仓库

git commit  -m "xxx" 把文件提交到仓库,xxx为备注,可以一次提交多个add的项目

git status 查看当前仓库的状态(告诉你是否有被修改)

git  diff xxx 查看xxx的改动

git log (--pretty=oneline)输出提交的历史记录

 git reset --hard commit_id 指向某个版本

git reflog 查看命令历史,用来回到未来的版本

git checkout -- file  把file在工作区的修改全部撤销,分为两种情况:修改后还没有提交到暂存区,这时回回到版本库一模一样的状态;提交到暂存区后又作了修改,撤销修改就回到添加到暂存区后的状态。

git reset HAED file 把暂存区最新版本的修改撤销掉,重新放回工作区。

rm file 删除文件    

git rm file -> git commit    文件从版本库删除   

git checkout file 用版本库里的版本替换工作区的版本

git branch 查看分支

git branch <name> 创建分支

git checkout <name> 切换分支

git checkout -b <name> 创建加切换分支

git merge <name> 合并某分支到当前切换的分支

git branch -d <name> 删除分支

推送指令

在本地learngit仓库以下运行命令:

git remote add origin git@server-name:path/repo-name.git 

就能将本地仓库与github的远程仓库关联

git push -u origin master 

把本地master推送到远程库,加上-u能在第一次推送顺便关联,以后可以简化参数

git clone  将远程库clone到当前目录下

上一篇下一篇

猜你喜欢

热点阅读