User Tools

Site Tools


git

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
git [2021/06/15 16:16]
jordan
git [2023/03/08 16:09] (current)
xujianglong ↷ Page moved from 内部资料:git to git
Line 2: Line 2:
  
 ====== Git操作最佳实践 ====== ====== Git操作最佳实践 ======
 +
   * 每次完成一个最细粒度的功能点或者每修复一个bug就提交一次代码   * 每次完成一个最细粒度的功能点或者每修复一个bug就提交一次代码
   * 代码提交的message最好写对应的任务编号加任务描述(如果有任务管理系统的话)   * 代码提交的message最好写对应的任务编号加任务描述(如果有任务管理系统的话)
   * 每天早上pull一次代码,每天晚上pull并push一次代码,其他在有需要的时候pull push代码   * 每天早上pull一次代码,每天晚上pull并push一次代码,其他在有需要的时候pull push代码
   * 未完待续..   * 未完待续..
- 
  
 ====== 新手入门 ====== ====== 新手入门 ======
Line 21: Line 21:
 ===== 常用操作 ===== ===== 常用操作 =====
  
-{{:git新手入门.png?400|}}+{{:git新手入门.png?400}}
  
-  * Clone远程仓库(repository):''%%git clone <repository_url>%%'' +  * Clone远程仓库(repository):''<nowiki>git clone <repository_url></nowiki>'' 
-  * 添加untracked file:''%%git add <file_path>%%'' +  * 添加untracked file:''<nowiki>git add <file_path></nowiki>'' 
-  * 提交tracked files:''%%git commit -m <message>%%'' +  * 提交tracked files:''<nowiki>git commit -m <message></nowiki>'' 
-  * 推送到远程仓库:''%%git push%%'' +  * 推送到远程仓库:''<nowiki>git push</nowiki>'' 
-  * 获取最新修改:''%%git pull%%'' +  * 获取最新修改:''<nowiki>git pull</nowiki>'' 
-  * 查看工作区状态:''%%git status%%'' +  * 查看工作区状态:''<nowiki>git status</nowiki>'' 
-  * 查看日志:''%%git log%%'' +  * 查看日志:''<nowiki>git log</nowiki>'' 
-  * 回收未提交代码:''%%git stash%%'' +  * 回收未提交代码:''<nowiki>git stash</nowiki>'' 
-  * 恢复未提交代码:''%%git stash pop%%'' +  * 恢复未提交代码:''<nowiki>git stash pop</nowiki>'' 
-  * 放弃所有未提交代码(不含新增文件):''%%git checkout -- .%%'' +  * 放弃所有未提交代码(不含新增文件):''<nowiki>git checkout -- .</nowiki>'' 
-  * 切换分支:''%%git checkout <branch_name>%%'' +  * 切换分支:''<nowiki>git checkout <branch_name></nowiki>'' 
-  * 退出git pull时跳转后的消息页面,直接输入''%%:q%%''然后敲击回车即可退出(vim编辑器)+  * 退出git pull时跳转后的消息页面,直接输入''<nowiki>:q</nowiki>'' 然后敲击回车即可退出(vim编辑器)
  
 ===== git生成并添加ssh公钥方法 ===== ===== git生成并添加ssh公钥方法 =====
  
-*详见连接: http:%%//%%git.mydoc.io/?t=180845+*详见连接: http:<nowiki>//</nowiki>git.mydoc.io/?t=180845
  
 ===== Git打包不同分支的修改 ===== ===== Git打包不同分支的修改 =====
  
-<HTML> +<HTML> <note> </HTML> 暂未找到打包为zip文件的方法 <HTML> </note> </HTML> 本方法用于提交包含目录结构的近期修改,例如打包包含目录结构的自上次发布以来的所有修改,以用于增量更新等。
-<note> +
-</HTML> +
-暂未找到打包为zip文件的方法 +
-<HTML> +
-</note> +
-</HTML> +
-本方法用于提交包含目录结构的近期修改,例如打包包含目录结构的自上次发布以来的所有修改,以用于增量更新等。+
  
   - Git切换到需要打包的分支   - Git切换到需要打包的分支
-  - 使用命令打包文件,''%%git diff --name-only <branch_name_to_be_compared> <current_branch_name> | tar czf <tar_file_name_with_path.tar.gz> -T -%%''+  - 使用命令打包文件,''<nowiki>git diff --name-only <branch_name_to_be_compared> <current_branch_name> | tar czf <tar_file_name_with_path.tar.gz> -T -</nowiki>''
  
 ===== Git命令行如何记住密码 ===== ===== Git命令行如何记住密码 =====
Line 63: Line 56:
 git config --global --unset-all credential.helper git config --global --unset-all credential.helper
 sudo git config --system --unset-all credential.helper sudo git config --system --unset-all credential.helper
 +
 </code> </code>
  
 +====== Git分支管理 ======
  
-=====Git flow ======+===== 为什么要使用Git分支管理 =====
  
-[[http://nvie.com/posts/a-successful-git-branching-model/|Git flow创始人博客文章]]+  开发阶段,出现重大变化,老的版本不想丢掉,新的版本要开始做,因此需要分支管理 
 +  已上线项目,加功能、改bug,如果动了正在运行的代码所在分支,导致不敢发布 
 +  不同的目的需要不同的分支来管理,比如改bug要用改bug的分支,新功能要用新功能的分支
  
-[[https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow|Git flow快速入门Gitflow Workflow]]+===== 为什么用Git Flow进行分支管理 ===== 
 + 
 +  - Git Flow自动化分支管理,基于哪个分支开新分支,如何合并分支,都有标准化流程 
 +  - Git Flow得到了大多数工具的支持,例如命令行、Source Tree、IntelliJ Idea等 
 +  - Git Flow是分支流程管理规范,也是工具,通过工具规范化便捷化分支管理 
 + 
 +===== Git Flow基本教程 ===== 
 + 
 +{{https://nvie.com/img/git-model@2x.pngimg}} 
 + 
 +使用举例: 
 + 
 +  - 开发新功能:git flow feature start membership,git flow feature finish membership 
 +  - 修复线上bug: git flow hotfix start dependent-injection, git flow hotfix finish dependent-injection 
 +  - 发布新版本: git flow release start 2.0, git flow release finish 2.0 
 + 
 +===== Git Flow详细教程 =====
  
 [[https://www.git-tower.com/learn/git/ebook/cn/command-line/advanced-topics/git-flow|git flow的工作流程]] [[https://www.git-tower.com/learn/git/ebook/cn/command-line/advanced-topics/git-flow|git flow的工作流程]]
  
-===== Git flow 常见问题 =====+[[http://nvie.com/posts/a-successful-git-branching-model/|Git flow创始人博客文章]] 
 + 
 +[[https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow|Git flow快速入门:Gitflow Workflow]] 
 + 
 + 
 +===== Git Flow 常见问题 =====
  
 ==== 使用Git flow进行分支管理,是否需要执行git commit和git push等操作? ==== ==== 使用Git flow进行分支管理,是否需要执行git commit和git push等操作? ====
git.1623744970.txt.gz · Last modified: 2021/06/15 16:16 by jordan