Git版本工具

git使用教程

一.git与svn的区别

svn:集中式版本控制

​ 优点:管理方便,集中式服务器更能保证代码安全性,代码一致性非常高,适合人数不多的项目开发

​ 缺点:服务器压力大,没有网络就没有办法工作

Git:分布式版本控制

​ 优点:适合分布式开发,公共服务器和数量都不会太大,速度快比较灵活,开发者之间比较容易处理冲突,可以离线工作

缺点:代码保密性差,一旦开发者把整个库克隆下来就可以公开所有代码和版本信息

二.git工作流程

图片描述

Workspace:工作区
Index / Stage:暂存区
Repository:仓库区(或本地仓库)
Remote:远程仓库

三.如何操作

    1. 通过 git init 命令创建本地仓库
    2. git add . / git add 文件名  添加文件到暂存区
    3. git commit -m "注释信息"    提交到本地仓库
    4. git status   查看仓库状态,有无数据变动
    5. git diff 文件名   查看文件具体的变动内容

版本回撤相关命令:
    1. git log  查看历史提交记录
    2. git reset --hard HEAD^/HEAD^^  回退到上一个版本/上两个版本
    3. git reset --hard HEAD~100   回退到前多少个版本
    4. git reflog   获取各个版本的版本号
    5. git reset --hard 版本号  回退到指定版本
    
撤销修改和删除文件操作:
    1. git checkout -- 文件名   撤销工作区没有添加到暂存区之前的修改操作(放入暂存区之后未提交之前
                                                  做的操作也可以撤销) 
    2. rm 文件名    删除文件,未提交可通过 git checkout -- 文件名 撤回删除操作

分支操作相关命令:
     1.git checkout -b dev  创建并切换到dev分支
     2.git branch 查看当前分支
     3.git branch dev  创建dev分支
     4.git branch -d dev  删除dev分支
     5.git checkout dev 切换到dev分支
     6.git merge dev   合并dev分支到当前分支
    
    
远程仓库:
    1.注册github账号,创建ssh key
    	ssh-keygen -t rsa -C "your email"
    	在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsa和id_rsa.pub这两个文件
    	id_rsa是私钥,id_rsa.pub是公钥
    2.登录github,打开” settings”中的SSH Keys页面,然后点击“Add SSH Key”,填上任意title,在Key文本框里黏贴id_rsa.pub文件的内容。
    3.登录github上,然后在右上角找到“create a new repo”创建一个新的仓库,然后在本地的testgit仓库下运行命令:
        git remote add origin 自己的github仓库地址
    4.推送本地仓库到远程仓库: git push origin master
    5.从远程仓库克隆到本地: git clone github仓库的地址
        
 
        
        
    多人协作模式:
         首先,可以试图用git push origin branch-name推送自己的修改.
		如果推送失败,则因为远程分支比你的本地更新早,需要先用git pull试图合并。
		如果合并有冲突,则需要解决冲突,并在本地提交。再用git push origin branch-name推送。	
    

原文地址:https://www.cnblogs.com/zhaogang0104/p/12969359.html