人生不能重来,但Git可以
当执行 git init 初始化指令後,会在该资料夹下面新增一个 .git
的资料夹,该资料夹就是 Git Repository 的本体所在。其中包含 blob objects, branch, remote, config 设定档等。.git
储存了 Git 所有资讯。在 Local 端对 Git 的所有操作,也都是反映在这个资料夹中。
.git
内包含几个部分
当我们每次进行 branch 切换时,
在git中最常用的指令
git clone <url>
: 将远端数据库克隆一份至本地git add
: 将档案加入至暂存区域git commit
: 将存於暂存区域的档案提交到本地储存库
git push origin <branchName>
: 推至远端数据库
git pull origin <branchName>
: 将远端数据库与本地分支同步git checkout <branchName>
: 在本地分支切换(连动工作目录,如基础概念所示)commit 重点在於让协同夥伴了解做了那些改变
Why ? 为了甚麽而做,可能是使用者提了什麽需求、发现了那些BUG...
What ? 做了什麽
How ? 如何做
如何修改 commit 纪录
git commit --amend -m "新讯息"
git rebase -i <须回朔的范围SHA-1值>
跳出 Vim 编辑器:
pick ec327e4 emcs 功能开启
pick d3f0b4a emcs 功能初版
pick 5b72b9e sqc 功能新增
pick b5ba78a sqc first commit
说明: reword ec327e4 emcs 功能开启
reword d3f0b4a emcs 功能初版
pick 5b72b9e sqc 功能新增
pick b5ba78a sqc first commit
上面选择修正两项commit讯息,按下储存离开後,会再跳出vim介面即可修改内容,如下
ee6e6d6 sqc 功能新增
8c2b80f emcs 功能初版(commit修正)
31726f3 emcs 功能开启(commit修正)
1507b8b Initial commit
穿梭各版本
git reflog
查看所有纪录
git log --oneline -n
可以查看目前所在分支前 n 次的commit纪录
使用 reset
git reset --hard HEAD
回复到最新提交版本git reset --hard HEAD~
等於 ~1 回复到上一个提交版本git reset --hard HEAD~n
n 等於往上第几个提交版本 回复之前指定的提交版使用 revert
git revert HEAD
"远程版本回推"
git push -f origin branchA
整理分支
在开发过程中,为了确保主线不被开发过程中的代码影响,所以我们会开立许多分支(功能),这样做的好处是可以独立开发互不影响,但相对的就会有许多支线,相当混乱的状况,**所以当我们开发完成後,可以先做分支整理
**在推至主线上,这样在查看纪录时也比较方便。
git branch -d <branchName>
git push -d origin <branchName>
git reset HEAD^
(reset预设是mixed,所以档案会被丢回工作区)
企业通常会进行渗透测试,以验证现有的安全和隐私控制,并通过发现漏洞和利用漏洞,彻底记录测试期间执行的...
这次讨论的《图库区块》应用,图库区块可让你轻松地新增多张相片,并以引人入胜的方式自动排列相片。是《...
大家好今天要介绍arduino的使用,首先要先请各位下载他们官方的arduino IDE Ardui...
sqflite 昨日我们使用WebSocket技术建立了一个简单聊天室,不过每次重新刷新画面後聊天室...
"The Great Movie Experience" as Myron En...