由Git初学者总结的Git概述
有用的网站
猴子都能理解的Git入门
由GitHub员工演讲
ProGit
还有其他软件设计的Git入门等等
即使是猴子也能理解Git,就像使用钻头一样,可以通过实际操作让自己的手熟悉命令的感觉练习。
为了理解为什么要使用Git,可以听GitHub员工的演讲或使用ProGit进行辅助学习,效果会很好。
Git是一种分布式版本控制系统。
以前,开发人员使用类似于TimeMachine的集中式版本控制系统。
-
- 分散型なのでサーバーがダウンしても開発がストップしない
- 開発を”スナップショット”のように保存していく
开发的主流已经从上述的两个因素转移到了Git。
基本的的五个指令
git init <repository or branch name>
使用Git创建版本管理的位置。
由于自动创建目录,最好从/workspace下进行。
git status
告诉我当前目录的状态。
只要执行这个命令,它会告诉你在进行git push之前需要做哪些操作,所以最开始可以连续输入git status,大致就知道了。
git add <file name>
在从”工作树”到”索引”的过程中,提升已进行操作的文件阶段。
因为我在所有的 Git 入门网站上反复看到这是理解 Git 的关键,所以我想一直重复使用 git add,直到对此熟悉为止。
参考网址
git commit -m "<message>"
将索引中注册的内容记录到仓库中。为了提交必须附加评论,并且需要将其作为在开发中具有逻辑意义的一部分进行上传。
git push <repository or branch name>
将Git上传到远程仓库,这样才能与他人共享开发状态。
他是一个重要的指令。
git branch
可以使用 “git branch -r” 命令来确认 Git 分支。该命令可以查看远程仓库中存在的分支。
git branch -b <branch name>
创建一个新的Git分支并切换到新分支。
git checkout <branch name>
移动到由<分支名称>指定的分支。
在中文中,只需要一种选项来释义原文。
通过在分支名称后面加上“~任意的数字”,可以向后移动指定的数字次数的commit。当重新checkout时,可以将代码状态恢复到原始状态。
git fetch <branch name>
检查远程存储库是否有更改,并更新本地存在的远程存储库信息。
git merge <branch name>
从本地现有的远程存储库的信息与本地当前分支进行合并。
当进行合并时会出现冲突情况(即别人和自己同时编辑相同的位置)。
分支A
在达到理想状态后,自行编辑的问题解决后,将其提交(commit),两个分支将合并,形成一个新的commit Lig。
git pull <branch name>
最好养成先通过fetch确认后再merge这两个操作同时进行的习惯。
其他方便的命令 de
git merge <branch name> —no-ff
在Git进行合并时,可以使用一个命令将合并历史记录保存在Git中,具体使用与团队的方针有关。
git config --global alias.graph "log --graph --all --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --date=relative"
git tag <tag name>
也许我们可以在GitHub上进行标签搜索,然后制定一个团队留下标签的规定,这样就可以更好地利用它。
在提交历史中可以留下标签信息。
总结
由于学习的内容在一天之内没有涉及到太难的概念,所以我应该更早点开始学习。虽然读《独習Git》这样更厚的书可能会使我深感其中的奥妙,但实际使用时如果感觉不够用,我仍然会想要再学习一下。