git是一个工具,管理代码的工具。
版本控制工具,可以将每次开发后的代码形成一个版本,可以在任意版本之间来回切换。
git可以进行分支开发,通过命令就能将多个分支进行合并。
仓库 和 文件夹?
文件夹不是仓库,仓库是文件夹。被git工具管理的文件夹叫仓库。
远程仓库 和 本地仓库?
推送(将本地仓库上传到远程仓库) 和 同步 拉取(将远程仓库下载到本地仓库)
本地仓库操作
将文件夹变成仓库:
git init
仓库的状态:
- 工作区:红色的文件名称表示在工作区
- 暂存区:绿色的文件名称表示在暂存区
查看仓库状态:
git status
每个新生产的产品必须经历过3个区域才能存放好。
将工作区内容放在暂存区:
git add 文件名称/文件夹名称/.
把暂存区内容放在版本区:
git commit -m "对这次提交自己做的标注" # 提交
查看历史版本:
git log
设置全局的提交的用户名称和邮箱号:
git config --global user.name '用户名称' git config --global user.email '邮箱号'
查看自己全局配置的用户名称和邮箱:
git config user.name git config user.email
版本跳转:
git reset --hard 版本号
一般提交代码不能提交node_modules,需要设置git管理的黑名单。在.git
隐藏文件夹同级的目录下创建固定名称的文件.gitignore
,将黑名单文件或文件夹的路径写入这个文件中即可。
远程仓库操作
远程仓库常见的有3个:
- github:服务器在国外(属于微软),全世界开发者都会玩的网站
- gitee:服务器在国内(码云),只有中国人会玩,跟github操作是一模一样的
- gitlab:服务器全世界都有镜像,企业版需要手动搭建(企业项目),操作都是一样的
通常有两种操作:
-
在企业中,通常半路接项目,需要从仓库中获取到已有的代码
从远程仓库将代码克隆下来:
git clone 仓库地址
将本地仓库的版本推送到远程:
git push
冲突了,解决:
git pull git push
-
自己玩的时候,新建仓库,为了方便推送,会新建一个没有被初始化过的仓库
此时远程仓库没有过初始化 ==> 意味着没有过一次提交记录。
需要在本地有1个仓库(至少得有1次提交记录),再跟远程仓库建立连接,然后将本地仓库代码推送到远程。
在本地执行的命令:
git init git add . git commit -m "xxx" git remote add origin 仓库地址 git push -u origin master
第一次推送搞定。
后续操作命令:
git add . git commit -m "xx" git push
分支操作
分支可以理解为另一条时间线。
查看分支:
git branch
创建分支:(会将当前分支上的内容拷贝一份到新分支上)
git branch 分支名称
切换操作分支:
git checkout 分支名称
创建并切换到新分支上:
git checkout -b 分支名
合并分支:(将其他分支内容合并到当前分支)
git merge 被合并的分支名
删除分支:
git branch -D 要删除的分支名
默认第一次推送或者克隆的时候,需要输入账号密码,然后计算机就会将账号密码保存在计算机"凭据管理器"中的"windows"凭据。