git本地仓库
git的3个区域: 工作区(working tree),暂存区(index /stage),本地仓库(repository);
本地仓库:
1.创建好文件夹在文件夹内部打开git
2.进入之后初始化git init //初始化
3.初始化过后文件中会出现一个隐藏的git文件不要动
4.在文件中也内容并添加到暂存区git add . //添加暂存区
5.再由暂存区添加到本地仓库git commit -m "commit message" //提交到仓库(双引号里面是注释)
远程仓库
注:本地仓库连接远程仓库一共有两种方法,本人用的是https的。
1.进入github官方创建一个远程仓库
2.获取仓库https地址
3.本地仓库连接远程仓库git remote add origin https://github.com/仓库地址.git //连接远程仓库
4.如果出现连接失败是因为远程仓库自带一个文件,与本地仓库内容冲突所以git pull origin master --allow-unrelated-histories 把本地仓库的变化连接到远程仓库主分支
如果再出现让你解释一下为什么要合并(你可以直接冒号wq直接退出来)
5.以上这个情况是出自在github创建远程项目时有个(使用自述文件初始化此存储库)这个选择,不选择的话就不会出现第4的问题了
6.连接过之后提交远程仓库即可git push -u origin master //提交远程仓库
从远程库克隆
1.创建一个新的文件夹
2.在文件中打开git
3.初始化文件git init //初始化
4.使用git clone git@github.com:michaelliao/gitskills.git(后面是你的远程仓库地址)
分支管理
git创建、合并和删除分支非常快,所以Git鼓励你使用分支完成某个任务,合并后再删掉分支,这和直接在master分支上工作效果是一样的,但过程更安全。
git branch dev 创建分支
git checkout dev或者git switch <name> 切换到分支
git checkout -b dev或者git switch -c <name> 创建并切换,相当于前两个的合并
git branch 查看本地分支
git branch -a (--all) 查看本地及远程仓库分支
git merge dev 把dev分支合并到当期分支
git branch -d dev 删除分支
git push origin --delete branchName 删除远程分支
如果两个分支都对同一个文件做了修改,合并可能会遇到冲突
解决冲突就是把Git合并失败的文件手动编辑为我们希望的内容,再提交。
Tips:
未add的内容不属于任何一个分支, 未commit的内容也不属于任何一个分支。 也就是说,对于所有分支而言, 工作区和暂存区是公共的。只有commit之后才属于某个分支