最近在进行一个华为校园APP开发者大赛,三个小组成员,第一次正在的使用Git来团队协作开发,其中遇到了很多问题,故重新学习了一遍Git
git config --global user.name "Your Name" git config --global user.email "email@example.com"
git init
git add readme.txt
git commit -m "upload readme file"
git clone https://github.com/cizel/soft_backup
git remote add origin git@github.com:cizel/soft_backup.git
git add readme.txt
git commit -m "upload readme file"
git push origin master
基本语法
查看分支: git branch
创建分支: git branch <name>
切换分支: git checkout <name>
创建+切换分支: git checkout -b <name>
合并某分支到当前分支: git merge <name>
删除分支: git branch -d <name>
分支的使用
Git创建Develop分支的命令:
git checkout -b develop master
将Develop分支发布到Master分支的命令
# 切换到Master分支 git checkout master # 对Develop分支进行合并 git merge --no-ff develop
tip:
--no-ff
未使用 --no-ff
使用快速合并的策略
--no-ff
会执行正常合并,在Master分支上生成一个新节点。为了保证版本演进的清晰,我们希望采用这种做法。
一、主分支Master
首先,代码库应该有一个、且仅有一个主分支。所有提供给用户使用的正式版本,都在这个主分支上发布。
二、开发分支Develop
主分支只用来分布重大版本,日常开发应该在另一条分支上完成。我们把开发用的分支,叫做Develop。
三、 功能分支
第一种是功能分支,它是为了开发某种特定功能,从Develop分支上面分出来的。开发完成后,要再并入Develop。
四、预发布分支
预发布分支是从Develop分支上面分出来的,预发布结束以后,必须合并进Develop和Master分支。它的命名,可以采用release-*的形式。
五、修补bug分支修补bug分支是从Master分支上面分出来的。修补结束以后,再合并进Master和Develop分支。它的命名,可以采用fixbug-*的形式。
# 告诉你有文件被修改过 git status #可以查看修改内容 git diff
# 查看提交历史,以便确定要回退到哪个版本 git log # 查看命令历史,以便确定要回到未来的哪个版本 git reflog
修改版本
git reset --hard commit_id
git reset --hard commit_id # 如果使用远端,git push 的情况 git push origin HEAD --force