1.git安装
https://npm.taobao.org/mirrors/git-for-windows/v2.31.1.windows.1/
根据电脑系统版本选择下载
2.git使用思路
https://zhuanlan.zhihu.com/p/73363482
git管理项目需要有几个分支
3.git差异分析工具
项目最终是合并到master分支,如果合并时发生冲突到底该舍弃哪个项目呢?使用git差异分析工具找到分支项目差异,然后根据差异决定舍弃哪个项目
4.Git使用教程
假定已经按照好了git
4.1 下载项目到本地
(1)新建文件夹,命名为MyTest,选中文件夹右键Git bash here
(2)输入下载指令(黄色圈圈处)
PS:如何知道网址
一开始点进去
https://gitee.com/crystony/zookeeper-web?_from=gitee_search
,则目标网址为https://gitee.com/crystony/zookeeper-web.git
4.2 输入个人账号密码
要上传肯定得登陆,那么就得输入账号密码
git config user.name “李伟文”
//输入账号 李伟文
执行指令会报错的:git config user.name “李伟文” not in a git directory,因为根本就没有这个目录,需要先初始化创建一个git模板出来,使用git init
//使用git init
打开config文件可看到李伟文
4.3 观察config文件
刚才信息已经保存了,但是最上面有个core,如果想修改core里内容,使用指令
git config --global core.editor emacs
4.4 配置差异分析工具
git config --global merge.tool vimdiff
配置Emacs 编辑器
$ git config --global core.editor emacs
4.5 查看配置信息
git config --list
经测试,这是显示所有的配置信息,
注意:此时按下键盘q能退出显示配置信息
git config --global --list
PS:本以为会显示MyTest下config信息,其实还是显示gitconfig文件信息
4.6 git仓库下继续创建子仓库
git init newrepo
PS:感觉用处不大
4.7 在gitee官网上注册账号,新建个仓库,仓库名:MyTest
4.8 把gitee官网上仓库和本地仓库关联起来
git remote add origin https://gitee.com/li-weiwen/my-test.git
一个本地库只能关联一个远程库,如果已经关联了后再关联会报错,使用git remote -v查看已经关联了哪个远程库
4.9 上传至官网gitee仓库
(1)本地文件添加至暂存区
git add aa.txt
(2)暂存区提交到本地分支
git commit -m “如果有文件再次添加到git会提示”
git commit -am “强制添加” 这条指令慎用
(3)本地分支提交到远方仓库master分支
git push origin master
或者是
git push -u origin master
注意:git config --system --unset credential.helper命令。
- 命令含义:帮助清除本地已经缓存的username和password.
- 可能会出现下面错误,输入指令git push -f origin master强制覆盖远方仓库,怀疑这个错误是使用git commit -am造成的
4.10 清空暂存区指令
rm .git/index指令:清空暂存区
git rm --cached hello.txt:删除暂存区指定文件
4.11 fatal: cannot do a partial commit during a merge.解决方案:
输入指令git checkout
再输入git reset
4.12 tag使用
发布项目V1.0,V2.0,2.0就是tag,下面为tag使用
4.13 git merge
4.14 fetch
我遇到的一个误区
可通过git config里设置user.name 和 user.email,
本以为设置这些参数进行clone时不需要密码,实际上还是需要输入账号密码登陆,user.name 和 user.email仅仅是告诉这个项目是谁提交的和联系方式.
4.16 其他指令
同步远程仓库:git push -u origin <分支名>
克隆项目:git clone url
查看分支:git branch
创建分支 git branch <分支名>
切换分支:git checkout <分支名>
合并分支:git merge <分支名>
本地分支推送至远程分支:git push origin feature-branch:feature-branch
远程分支拉倒本地:git checkout -b feature-branch origin/feature-branch
查看历史记录:git log
恢复版本:git reset --hard <版本号>,版本号写前几位就可以
查看命令记录:git reflog