spark网站开发,微信公众号需要开发吗,百度如何注册公司网站,个人免费网站创建使用github 托管代码简单使用教程--远程操作3.连接本地仓库与远程仓库3.1 git clone 克隆实现链接3.2 git remote add origin4.远程操作4.1 git checkout -b 切换分支14.2 git branch 查看分支4.3 git merge 合并分支4.3.1 step1#xff1a;切换成主分支4.3.2 step2#xff1…
使用github 托管代码简单使用教程--远程操作3.连接本地仓库与远程仓库3.1 git clone 克隆实现链接3.2 git remote add origin4.远程操作4.1 git checkout -b 切换分支14.2 git branch 查看分支4.3 git merge 合并分支4.3.1 step1切换成主分支4.3.2 step2合并分支4.3.3 step3删除分支4.3.4 git merge --no-ff 带参数合并分支4.3.5 -D 强制删除没有合并的分支4.4 git switch 切换分支24.5 解决冲突4.6 分支管理策略4.7 创建bug分支4.7.1 git stash4.7.2 bug 修复工作流程4.7.3 git stash apply git stash drop4.7.4 git stash pop4.7.5 git stash list4.7.6 git cheery-pick 一键修复多分支bug4.8 创建 feature 分支--新功能开发4.9 多人协作4.9.1 git remote4.9.2 git push 推送特定分支4.9.3 git pull4.10 rebase5.[git push](https://blog.csdn.net/u010312474/article/details/107915694)廖雪峰老师博文学习笔记https://www.liaoxuefeng.com/wiki/896043488029600/897884457270432git pull 和 git fetch的区别
3.连接本地仓库与远程仓库
3.1 git clone 克隆实现链接
克隆远程仓库到本地克隆下来的仓库自然的形成和远程仓库的链接。
step 1.在github 平台上新建仓库 step 2.克隆改仓库到本地 git clone gitgithub.com:cyy-hub/Deecamp.git step 3.在本地仓库上进行文件管理 step 4.将需要上推到远程仓库的文件进行Push操作
注意 1.clone仓库git会将本地的master 分支与远程的master分支对应起来。远程仓库默认名称是origin. 2.克隆下来时只能看到master分支 从远程创建其他分支到本地 git checkout -b dev origin/dev 3.2 git remote add origin
step1. 在本地新建一个仓库新建一个文件夹之后 git init $ git init Initialized empty Git repository in /Users/michael/learngit/.git/ step 2.在github 平台上新建仓库两个仓库的名字暂时设为一致 step 3. 创建链接 git remote add origin gitgithub.com:cyy-hub/Deecamp.git step 4.在本地仓库上进行文件管理 step 5.将需要上推到远程仓库的文件进行Push操作 第一次上推的时候用git push -u origin master本地的master分支内容推送的远程新的master分支同时将本地的master分支和远程的master分支关联起来 git push -u origin master 参考博文https://www.cnblogs.com/longshiyVip/p/5642360.html
4.远程操作
每次提交git 将每个版本串成一条时间线一条时间线就是一个分支. Head 指向当前作用的分支如果没有新建分支即为指向master分支。
4.1 git checkout -b 切换分支1 $ git checkout -b dev Switched to a new branch ‘dev’ git checkout命令加上-b参数表示创建并切换到新的分支上相当于以下两条命令 $ git branch dev $ git checkout dev Switched to branch ‘dev’ 4.2 git branch 查看分支 $ git branch dev master 4.3 git merge 合并分支
4.3.1 step1切换成主分支 git checkout master 4.3.2 step2合并分支
(将指定分支dev合并到当前分支master) git merge dev 4.3.3 step3删除分支
合并完可以选择删除过多的分支dev git branch -d dev 4.3.4 git merge --no-ff 带参数合并分支
一般情况下Git会用Fast forward模式合并。但这种模式下删除分支后会丢掉分支信息。如果要禁用Fast forward模式Git就会在merge时生成一个新的commit这样从分支历史上就可以看出分支信息。 git merge --no-ff -m “merge with no-ff” dev 因为合并且创建一个新的commit所以加上-m参数把commit描述写进去。
4.3.5 -D 强制删除没有合并的分支 git branch -D feature-vulcan 4.4 git switch 切换分支2
创建(-c参数)并切换到新的分支上 git switch -c dev 切换到已有分支 git switch master 4.5 解决冲突
两个分支上对同一个文件进行了修改修改内容不一致无法直接merge需要手动解决冲突后再提交。 merge 的时候会显示冲突文件在哪里 CONFLICT (content): Merge conflict in readme.txt 打开对应的文件会提示冲突内容,保留想留下的去掉再add,commit HEAD Creating a new branch is quick simple. Creating a new branch is quick AND simple. feature1 带参数的git log 可以查看分支合并情况 git log --graph --prettyoneline --abbrev-commit 4.6 分支管理策略
1.master 分支需要保持稳定性仅用来发布新版本不能在上面干活 2.每个人在各自的分支上干活稳定时的往主分支中合并即可
4.7 创建bug分支
4.7.1 git stash
把当前工作现场存储起来等之后恢复现场继续工作。运行完git stash 之后用git status来查看工作区就是干净的。 git stash 4.7.2 bug 修复工作流程
每个bug 都可以通过一个新的临时分支来修复修复后合并分支然后删除临时分支。 step1 确定在哪个分支上修复bug, 就在该分支上创建临时分支 step2 修复big文件 提交文件add, commit step3切换回原分支合并分支merge step4 删除bug 分支
4.7.3 git stash apply git stash drop
step1 恢复内容 git stash apply step2 删除stash里的内容 git stash drop 多个现场保护在stash 中apply可以指定想要恢复的工作现场 $ git stash list stash{0}: WIP on dev: f52c633 add merge $ git stash apply stash{0} 4.7.4 git stash pop
同时完成恢复和删除 git stash pop 4.7.5 git stash list
git stash list可以查看被保护起来的现场的情况git stash pop 保存
4.7.6 git cheery-pick 一键修复多分支bug
修复了一个分支上的一个bug之后从这个分支创建出来的分支同样存在这样的bug 。修复同样的分支不需要再操作一遍。只需要把刚刚在 4.7.2 step 2 中的commit 所做的修改复制到copy 分支中。 step1 切换到需要修复的copy 分支 step2 复制修复修改 git cherry-pick 版本号 此处会创建一个新的的commit.
注整个修复过程可以选择任意一个待修复的分支做修复然后在其他分支上cherry-pick 该修复
4.8 创建 feature 分支–新功能开发
在软件开发中总需要开发新功能需要跑一些实验性的代码。所以开发一个新功能的时候应该创建一个feature 分支在上面进行开发合并删除。
4.9 多人协作
4.9.1 git remote
查看远程分支-v 可以查看抓取和推送权限 $ git remote origin $ git remote -v origin gitgithub.com:michaelliao/learngit.git (fetch) origin gitgithub.com:michaelliao/learngit.git (push) # 可以看到说明有推送权限 4.9.2 git push 推送特定分支
在工程开发中需要确定哪些分支需要推送哪些分支不需要、 git push origin master # 推送master分支 git push origin dev # 推送dev 分支 4.9.3 git pull
将远程代码库的最新内容拉下来后直接合并即git pull git fetch git merge这样可能会产生冲突需要手动解决。
协同开发时git push 时其他小伙伴已经push 操作过报错 $ git push origin dev To github.com:michaelliao/learngit.git ! [rejected] dev - dev (non-fast-forward) error: failed to push some refs to ‘gitgithub.com:michaelliao/learngit.git’ hint: Updates were rejected because the tip of your current branch is behind hint: its remote counterpart. Integrate the remote changes (e.g. hint: ‘git pull …’) before pushing again. hint: See the ‘Note about fast-forwards’ in ‘git push --help’ for details. 解决先用git pull 将远程仓库中的 dev 分支来回来回自动在本地合并。很大的可能需要手动解决冲突再push。 $ git pull Auto-merging env.txt CONFLICT (add/add): Merge conflict in env.txt Automatic merge failed; fix conflicts and then commit the result. 4.10 rebase
使git 提交历史变成一条干净的时间线 git push:error: failed to push some refs to git pull git status:Your branch is ahead of ‘origin/master’ by 3 commits. git rebase 4.4 git fetch 将远程代码库的最新内容拉到本地在检查拉到本地的内容以后决定是否合并到工作区的分支中。 (git merge需要自己操作么 廖雪峰老师博文学习笔记https://www.liaoxuefeng.com/wiki/896043488029600/897884457270432
5.git push git push origin HEAD:refs/for/master