1. git add
将 file.txt 文件添加到暂存区。
git add file.txt
将当前所有有变动的文件添加到暂存区。
git add .
2. git commit
将暂存区的文件提交到当前分支。
git commit -m '将刚才添加到暂存区的文件提交到当前分支,-m 代表要加注释'
3. git push
推送分支,就是把该分支上的所有本地提交推送到远程库。
git push origin master
上面命令表示,将本地的 master 分支推送到 origin 主机的 master 分支。如果 master 不存在,则会被新建。
远程库的名字就是 origin,这是 Git 默认的叫法,也可以改成别的,但是 origin 这个名字一看就知道是远程库。
推送到远程仓库 dev 分支。
git push origin dev
第一次使用时要带上 -u 参数
git push -u origin master
以后每次提交就可以直接使用 git push 了,不用每次都输上一串命令。
git push
4. git pull
git pull 将远程仓库的更新拉取下来,再和本地分支进行合并。
5. git branch git checkout
git branch 查看当前所有分支
git branch 创建分支
git checkout 切换分支
创建分支 dev
git branch dev
切换到分支 dev
git checkout dev
6. git log
git log 命令可以查看提交的历史记录。
E:\res\platform>git log
commit 783ec77f1447125971aa2651e4320a768938d453 (HEAD -> 3.0, origin/3.0)
Author: woai3c <411020382@qq.com>
Date: Wed Apr 22 14:19:00 2020 +0800
chore: 只有打包时才应用忽略 console.log 语句
commit 514cf81798a14b3bf273019d02885f87bf8ad2ac
Author: woai3c <411020382@qq.com>
Date: Wed Apr 22 13:40:11 2020 +0800
feat: 添加全局 log 函数
如果不想显示无用的信息,可以使用 git log --pretty=oneline
E:\res\platform>git log --pretty=oneline
783ec77f1447125971aa2651e4320a768938d453 (HEAD -> 3.0, origin/3.0) chore: 只有打包时才应用忽略 console.log 语句
514cf81798a14b3bf273019d02885f87bf8ad2ac feat: 添加全局 log 函数
2f0e28962d3f2d5e9c047387560986411d2a07d0 chore: 更新 eslint 规则
7. git reset
git reset 命令用于版本回退。
假如你正在开发一个项目,有一天产品提了个新功能,要求三天内完成,于是你快马加鞭、加班加点终于在三天内完成了。
结果第四天产品告诉你新功能不要了。你想打死产品的心都有了,话虽如此,工作还是得继续,这时 git reset 就可以派上用场了。
将版本回退到上一版本。
git reset --hard HEAD~1
将版本回退到三个版本前。
git reset --hard HEAD~3
也可以指定固定的版本进行回退,先使用 git log --pretty=oneline 命令查看历史记录,将想要回退版本的 commit id 复制一下,回退时使用这个 commit id 进行回退。
git reset --hard 485776d96f57db88c6a6f31146532d21fc01b1ab
接着使用 git push -f 将回退版本后的分支强制推送到远程仓库,这样本地分支和远程分支就同步了。
git push -f
解决冲突
当执行 git pull,将远程分支和本地分支合并时,有可能会出现冲突的情况。
例如有 A 和 B 两个人,对同一文件 test.txt 进行了修改。A 修改完后先提交到了远程分支,当 B 要提交时,执行 git pull,发现远程仓库的 test.txt 和自己本地的版本有冲突。
### 以太网的的信道利用率
### 以太网的的信道利用率
<<<<<<< HEAD
aaaaaa
=======
bbb
>>>>>>> 9ccc398514d6a80a6ea2e44ade8171660d15cacf
### 以太网的的信道利用率
### 以太网的的信道利用率
从上面的代码可以看出,当前版本的文件内容 aaaaaa 和远程仓库文件的内容 bbb 产生了冲突。
冲突用 <<< ==== >>>> 将产生冲突的内容分隔开,如果你觉得远程仓库的内容不对,要换成自己的,那可以这样改。
### 以太网的的信道利用率
### 以太网的的信道利用率
aaaaaa
### 以太网的的信道利用率
### 以太网的的信道利用率
把 <<< === >>> 删除掉,并替换成自己的内容,再执行 git add git commit 提交内容。 这时,执行 git pull,你会发现没有更新,刚修改的内容也不会变,最后再执行 git push 将内容推送到远程仓库。
参考资料