技术文档写作Git

【GIT学习总结 I】TW常用GIT命令

2021-08-28  本文已影响0人  Joy的未来十年

Markdown写作 + Git版本管理 已成为全球IT互联网公司的主流写作平台,如果你有心投身这一领域从事技术写作,不妨事前学习一下Markdown语法以及Git版本管理的原理与常用指令。在国内的Gitee上搭个自己的repo,练练手。写作工具用顺手了,无疑可以让你有更多时间来了解产品,专注文档构思与写作。

目前已经快入职三个月了,慢慢对GIT不再恐惧,对GIT命令行也熟悉进来。前几天提交对原文档中几个节点的大修改,Merge Master后出现了一大堆Stashed/Staged的文件,以及莫名其妙的错误提示,彻底慌乱了。最后把产品的本地库删除,重新Clone远程库,重新基于远端分支建本地分支...似乎是搞清楚了一些概念。记录一下。

GIT之于文档管理的优势

目前,Markdown文档的版本管理是,基于Master,每个新feature,建立一个分支。Draft完成后,通过BitBucket Create Pull Request(PR) 。将PR发给Reviewer。Git之于文档管理,一个强大的地方是方便文档审阅。

Git存储区域

Git存储区域

Git常用命令

图解

Git常用命令

常用命令

Clone文档库

cd <本地Repo所在folde>
git clone ssh://git@code.abc.net/pd/xxx.git //只会clone master分支到本地,远端的其它分支是不会clone到本地的

根据远端分支建本地分支

方法1:
Git pull:
Git branch

Git branch后本地并没有显示新branch
Git checkout <分支名>
Git Checkout该分支后Git branch

方法2:
Git branch -r //查看远端分支,保证新分支存在
git checkout -b branchname origin/branchname //建立本地分支,并将它map到远端分支
注意!branchname前不能加"/"

提交本地分支到远端分支

  1. 如果有新增文件,必须先执行该命令
    Git add .

  2. 如果有repo中没有用到的文件,必须先执行删除,否则commit不会成功
    Git rm <文件名>
    Git rm -f <文件名> // 如果删除之前修改过并且已经放到暂存区域的文件,则必须要用强制删除选项 -f
    注意!删除时要带相对路径

  3. 修改以及增加删除的文件从本地暂存区提交到本地库**
    Git commit -m "reason for the commit" //将修改从本地暂存区提交到本地库
    Git commit -am "reason for the commit" //把暂存区的所有被修改或者已删除的文件提交提交到分支,
    注意! : 如果有新增的文件,必须在commit前,一定要先执行Git add .以及Git rm

  4. 将本地库修改同步到远端库,新手容易忘记这步!
    Git Push

其它通用指令

关于Staged与Stashed files

Staged -- 保存在暂存Stage/Index(缓存区)的文件,也就是完成了git add .的文件,但没有committ。
Stashed--临时需要切换branch,但working区的文件又不想commit,但又想保存在某个地方,以便下次继续开发,可用stash命令,将其暂存在working区的暂存区(并不是stage/index区)。-- PR时会把你所有的commit都显示出来,如果你每做一点点修改,就commit,你的每一次commit记录都会被别人看到。此时,stash命令就比较有用了

文档开发过程中,定期Merge Master内容。

因为Master是总版本,其它writer在不断向其中merge他们的feature分支。提交PR前一定要做Merge操作,一则解决多个writer可能同时修改一个文件产生的冲突,另一则,Diff才会只标注你所做的修改。
方法一:

  1. (分支a)Git checkout master
  2. (本地master) Git pull
  3. (分支a)Git merge master //merge最新的master
  4. (分支a) Resolve any merge conflicts, add, commit, and check status. 切记必须commit到本地库
  5. (分支a) Git Push

方法二:

  1. 保证本地工作区是没有任何修改代码的,也就是说需要将本地工作区编辑过的文件添加到暂存区(git add .),或提交到本地仓库中(git commit),才可以使用该命令拉取指定分支的代码合并到当前分支中。
  2. (分支a) Git pull origin master
  3. (分支a) Resolve any merge conflicts, add, commit, and check status. 切记必须commit到本地库
  4. (分支a) Git Push
Git stash

https://www.atlassian.com/git/tutorials/saving-changes/git-stash

Stash pop vs stash apply Stash list Choose which stash to apply

$ git stash pop stash@{2}

$ git stash apply stash@{2}

$ git stash drop

相关话题:
【GIT学习总结 2】GIT Debugging汇总
【GIT学习总结 3】GIT 进阶学习)

上一篇下一篇

猜你喜欢

热点阅读