git的基础使用

git.png

简单的代码提交流程

  1. git status 查看工作区代码相对于暂存区的差别
  2. git add . 将当前目录下修改的所有代码从工作区添加到暂存区 . 代表当前目录
  3. git commit -m ‘注释’ 将缓存区内容添加到本地仓库
  4. git pull origin master先将远程仓库master中的信息同步到本地仓库master中
  5. git push origin master 将本地版本库推送到远程服务器,
    origin是远程主机,master表示是远程服务器上的master分支,分支名是可以修改的

每一个GIT仓库都有三个区:

工作区:写代码
暂存区:临时存放每一次修改的代码,但是并没有生成历史版本
历史区:存放所有历史版本的地方(提交到历史区就会生成历史版本)

git:工作区==>暂存区==>历史区

git 和 svn 的对比

  • SVN: 集中式; 有一个中央服务器;用来存储所有的成员的代码;
  • git : 分布式: 每个成员都是一个服务器,也有中央服务器;如果想把本地代码提交到中央服务器,需要先把代码提交到本地的服务器;

SVN :

  1. svn必须需要网络才可以把代码上传到中央服务器
  2. svn 上传的是文件;

git :

  1. git不需要网络,把代码上传到服务器;
  2. git上传的是数据码;相对于svn更快;

GIT常用命令

  • $ git init
    ==>创建本地仓库
  • $ git add .
    ==>将本地代码提交到暂存区
  • $ git commit -m''
    ==>将暂存区里的改动给提交到本地的版本库
  • $ git status
    ==> 查看当前仓库文件的状态
  • $ git log [length]
    ==>指定显示[length]条日志,查看历史版本信息
  • $ git checkout .
    ==>切换分支
  • $ git reset --hard 版本号
    ==>把历史区之前的版本拉取到工作区

git的使用

  1. 创建本地仓库,并与远程仓库进行关联
创建客户端本地仓库(一个开发者就是一个单独仓库),
还需要让本地的仓库和远程仓库保持关联,这样才可以实现后续的信息同步
   $ git init    =>创建本地仓库
   $ git remote add origin “远程仓库GIT地址”   =>让本地仓库和远程仓库保持连接
   $ git remote -v =>查看连接信息(origin是连接的名称,一般都用这个名字,当然自己可以随便设置)
   $ git remote rm origin     =>移除本地仓库和远程仓库的链接
   $ git remote update origin   =>更新链接通道

   有更简单的方式:
只要把远程仓库克隆到本地,就相当于创建本地仓库,
而且自动建立了链接,并且把远程仓库中的内容也同步到了本地
   $ git clone “远程仓库地址” “本地仓库文件夹名字(不写默认是仓库名字)”
  1. 各自和中央服务器同步信息
推送:$ git push origin master   
(每一次PUSH之前最好都PULL一下:如果有冲突在本地处理一下冲突,然后再推送)
拉取:$ git pull origin master
  1. 如果有冲突:
1.进入到了编辑框模式,i->ESC->:wq 即可
2.自己会把两份代码都保存在本地文件中,自己手动去选择要哪一个,改完后重新提交即可
  1. 分支
    git checkout -b xxx  创建分支并且切换到指定分支下
    (可以把本地master中的历史信息同步到新创建的分支中)
    git branch  查看当前仓库所有的分支,并且查看当前在哪个分支上
    git branch xxx  创建一个分支叫xxx
    git checkout xxx   切换分支到xxx
    git branch -D xxx 删除分支xxx

    git merge xxx  把xxx分支的历史信息合并到当前分支下

  $ git stash / $ git stash pop  在切换分支的时候,有一部分信息并没有提交成为历史版本,
为了防止信息的丢失,我们需要先使用stash保存,然后在基于stash pop还原
  注意:
    // 在分支上改代码,不会影响到主干上的代码;
    // 如果需要创建分支,必须在master上线提交到历史区;
    // 在主干上去合并分支上的代码;
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容