Git常见操作

最近想总结下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到当前目录下

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 了解 Linux 常见命令 在使用 git 前,建议事先熟悉一些常见的 bash 命令 进入xxx目录$ cd x...
    acc8226阅读 637评论 0 1
  • Git常用语法 [TOC] Git简介 描述 ​ Git(读音为/gɪt/。)是一个开源的分布式版本控制系统,...
    君惜丶阅读 3,680评论 0 13
  • (预警:因为详细,所以行文有些长,新手边看边操作效果出乎你的预料) 一:Git是什么? Git是目前世界上最先进的...
    axiaochao阅读 1,970评论 1 8
  • 雨一直下 那天雨一直下,滴滴滴答,滴滴滴答。出门遛狗,踢踢踏踏,踢踢踏踏。遇到了斜对门的大妈,哭的稀里哗啦,稀里哗...
    教堂山的王有财阅读 368评论 0 0
  • 原无乡坐在床上把玩手上的豹子面具,正好能遮住整张脸,他拿起一旁的凤凰面具压在倦收天脸上,〝一个天上飞的一个地上跑的...
    慕瓴阅读 266评论 0 0