git

概念理解

远程仓库:放代码的服务器,放上去的代码,别人也可以用git clone或git pull 指令拉取到最新的对应分支的代码

本地仓库:你当前所用的主机仓库,把代码拿下来后刚开始就是跟远程仓库一致的代码

暂存区:一个用来暂时放文件的地方,可以用来切换分支时暂时存储改动点,切回来时应用;或者暂时放着,再更新到本地仓库,本地仓库又可以同步到远程仓库

工作区:手头上做事情的区域,可以切换分支修改不同功能

 

场景运用

正在a分支上修改A文件,突然有个bug,需要修改B文件。

此时需要把A文件的修改放在暂存区,切换/新建一个b分支,修改B文件,commit到本地库,同步到远程库,给到测试去测试;

然后回来a分支,把暂存区的A文件改动内容读回来,继续在A分支上开发

如B分支的功能ok了,可以merge代码到主干,打tag上线

A分支commit代码,push到远程库,merge到master分支(有冲突则解决冲突),打tag上线

 

常用命令

下载git项目代码到本地目录
git clone git地址
 
切到master分支
git checkout master
 
从远程服务器拉取当前分支最新代码
git pull
 
基于当前分支新建一个分支
git  checkout -b newbranchname 
 
进行修改后---
 
查看当前所在分支,本地文件状态,有哪些被修改了(再决定哪些文件要提交)
git status
 
git add 文件路径,添加文件到暂存区,之后配合commit指令可以提交到本地库
或添加修改了的所有文件git add ./
git stash,把文件放到暂存区,与git add的区别在于,git stash是用来暂时放着,到时可以拿出来应用到当前工作区目录的
新增的文件必须要用add指令,把它加入git版本控制中,才能用该指令
git stash save "提交信息"
git stash list
git stash pop stash@{num}/应用于当前目录并从缓存中删除,num是由list命令得出的
git stash show
借鉴:https://www.cnblogs.com/zndxall/archive/2018/09/04/9586088.html
 

一个非常有用的技巧,用来备份部分文件

  1. add 那些你不想备份的文件(例如: git add file1.js, file2.js)
  2. 调用 git stash –keep-index。只会备份那些没有被 add 的文件。
  3. 调用 git reset 取消已经 add 的文件的备份,继续自己的工作。
 
 
提交文件到本地仓库
git commit 文件名 -m “提交信息”(缺失文件名代表提交所有能提交的文件)
 
推到远程仓库当前分支同名的分支(更新远程仓库该分支内容)
git push
 
查看提交记录
git log
 
获取远程仓库上的新分支
git fetch
 
查看本地分支,返回中前面带*的就是当前所在分支
git branch
 
查看远程仓库和本地仓库所有分支
git branch -a
 
本地有修改了的内容,切换分支时想忽略本地修改,不然就先commit代码
git checkout ./
 
将本地仓库的b分支合并到当前分支,合并后记得要push才会更新远程仓库内容
(如果本地b分支不是最新,需切到b分支后git pull,再切到现分支执行git merge b,eg远程仓库的master已经有代码更新,现开发中的分支需要合最新代码进来)
git merge b

 

posted @ 2021-05-27 19:58  黄豆唧  阅读(53)  评论(0编辑  收藏  举报