git的结构
图片转自https://blog.csdn.net/u011535541/article/details/83379151
我们一般写代码在工作区,提交时,我们将工作区的代码先提交到暂存区,通过commit提交到本地仓库。
常用版本控制命令
#将目录下代码提交到暂存区
git add ./
#将暂存区的代码提交到本地仓库
git commit -m "说明"
#创建其它分支
git branch dev
#切换分支
git checkout dev
#回滚
git checkout HEAD^
应用
我们首先建立一个文件夹,创建一个文件
mkdir test
touch main.go
package main
import "fmt"
func main(){
fmt.Println("hello world")
}
打开终端,切换到该目录下
#初始化git
git init
#将代码提交到暂存区
git add ./main.go
#将代码提交到本地仓库
git commit -m "create file"
我们再创建一个分支
git branch dev
#切换分支
git checkout dev
下面,再修改一下文件
package main
import "fmt"
func main () {
fmt.Println("hello world")
fmt.Println("dev")
}
提交
git add ./main.go
git commit -m "dev modify"
此时,我们切换分支。
git checkout master
我们会发现,文件变化为之前master提交时的内容。
我们使用master分支提交
package main
import "fmt"
func main (){
fmt.Println("hello world")
fmt.Println("master")
}
git add ./main.go
git commit -m "master modify"
查看之前更改的日志
git log
git reflog
#回滚到上次提交
git checkout HEAD^
#回滚到前几次就是几个^
指定回滚到哪个点
先查看提交日志
git log
回滚到指定点
git reset --hard 9f43c
分支合并,分支合并将其它分支合并到此分支,其它分支并不改变。
git merge dev