Git学习——2
5.添加远程库
-
Creat a new repository
-
输入Repository name
-
初始化设置
- Public/Private
- Readme.txt
- license
-
克隆本地仓库
-
关联本地仓库
Git Bash下输入:
$ git remote add origin https://github.com/yourname/learngit.gitgit remote rm<name>若地址写错,可以用此命令删除。git remote -v查看远程仓信息。-v详细信息git remote rm origion解除本地与远程的绑定关系,并没有删除远程库。 -
本地库内容推送至远程库:
$ git push -u origin master
出现登录界面,点击登录(可能需要
over the wall)即可。成功会出现提示信息:![image-20220429195346109]()
-
git push把当前分支master推送到远程。参数-u由于远程仓库是空的,会把本地的master 分支和远程master关联起来,方便简化命令。
可以查看自己GitHub上的仓库,和本地完全一样: 
-
从远程库中克隆
先创建远程库再关联本地,即先从远程克隆到本地:
-
在Github上创建仓库;
-
在GitBash下输入(目录可以任意):
$ git clone https://github.com/yourname/name.git
-
6.分支管理
-
创建与合并分支
-
HEAD指向当前分支,master指向主分支。 -
创建分支后,提交即可合并。
-
合并后可以删除分支。(就是删除分支指针)
git checkout -b <name>创建并转到分支。git branch <name>创建分支git checkout <name>git switch -c <name>切换到新的分支,已有的无需-c命令。git branch查看所有分支,用*表示当前分支。 -
可以在分支上正常提交修改,但只是保存在当前分支,其他分支当前的值未改变。
git merge <name>合并指定分支到当前分支下。git branch -d <name>删除分支-D强行删除(在未提交该分支的修改,或未合并的分支的时候)
-
-
分支冲突

-
-
出现这种情况,无法快”使用合并“;
-
需要手动解决冲突。
-
就是把Git合并失败的文件手动编辑为我们希望的内容,再提交。
git log --graph --pretty=oneline --abbrev-commit查看分支合并情况,;
-
-
分支管理策略
- 一般情况下是
Fast forward,在这种情况下删除分支后会丢掉分支信息(无留存); git merge --no-ff -m "message" <name>会创建一个新的commit,可以看出来曾经做过分支;- 分类:bug、feature、master、其他。
- 一般情况下是
-
Bug分支
-
储藏当前工作场景:
git stash可以隐藏当前的commit和add信息; -
在当前分支创建新分支修复bug;
-
然后删除修复分支;
-
回到工作分支
git stash list查看隐藏的信息;git stash apply恢复后,stash内容不删除;git stash apply stash@{number}恢复指定的stashgit stash drop删除stash信息git stash pop恢复并删除stash内容 -
在工作分支上修复bug,复制修复信息到当前信息(特点提交信息)
git cherry-pick commit_num
-
-
多人协作
-
推送分支
git push origin <name>推送哪一个分支。 -
分支冲突
git pull抓取最新的推送,在本地合并,再推送若提示
no tracking information,需要指定本地分支与远程分支的链接git branch --set-upstream-to=origin/<name> <name>再pull;
-
-
rebase


浙公网安备 33010602011771号