5分钟掌握80%git操作

git作为代码管理最流行的工具,有一些快速上手或常用的功能,结合自己的工作,做了一些总结。

(1)下载远程代码到本地

git clone https://github.com/OnTheWay111/RNCodeCoverageExample.git

(2)上传本地代码至远程仓库:

git init # 通过git init命令把这个目录变成Git可以管理的仓库
git add 文件/文件夹  # 用命令git add告诉Git,把文件添加到仓库
git commit -m "wrote a readme file" # 用命令git commit告诉Git,把文件提交到仓库
#  备注:可以多次add不同的文件,一次commit提交
git push origin master # 推送到远程仓库

git status  # 查看git仓库最新的状态

(3)查看更改内容

git diff  # 查看所有修改内容
git diff  file_name  # 查看某文件修改内容 

(4)撤销未提交的修改

git checkout file_name

(5)撤销add后内容

git reset HEAD file_name

(6) 查看分支

git branch

(7)创建分支

git branch 分支名

(8)切换分支

git checkout 分支名

(9)合并分支,将分支A的代码,合并到分支B

git checkout 分支B
git merge 分支A

(10)删除分支

Git branch -D 分支名

(11)删除远程仓库文件:

1、删除本地文件

rm 文件/文件夹 

2、查看git仓库状态

 git status 

3、确定并删除git仓库的文件
确实要从版本库中删除该文件,那就用命令git rm删掉,并且git commit:

* $ git rm test.txt

* $ git commit -m "remove test.txt"
    * [master d46f35e] remove test.txt 1 file changed, 1 deletion(-) delete mode 100644 test.txt
* git push origin master
    * Username for 'https://gitbj.cmcm.com': [email protected]
	* Password for 'https://[email protected]@gitbj.cmcm.com':
	* 对象计数中: 2, 完成.
	* Delta compression using up to 8 threads.
	* 压缩对象中: 100% (2/2), 完成.
	* 写入对象中: 100% (2/2), 214 bytes | 214.00 KiB/s, 完成.
	* Total 2 (delta 1), reused 0 (delta 0)
	* To https://gitbj.cmcm.com/autoTestApp/UIPlatformDeploy.git
	* 125cb45..464ef29 master -> master

(12)查看git历史记录: git log (如果想要日志摘要:git log --pretty=oneline)

git log 087e7928b793240bdca565340583bd4c16d861c3 -1  # 查看某条git记录
git log 087e7928b793240bdca565340583bd4c16d861c3 -1 -p  # 查看某条git记录的具体修改内容

(13)回退到上个版本:

HEAD表示当前版本,上一个版本就是HEAD,上上一个版本就是HEAD^,往上100个版本写HEAD~100

git reset --hard HEAD^ 

(14)去到未来的某个版本:

git commit --hard commit_id

(版本号没必要写全,前几位就可以了,Git会自动去找。当然也不能只写前一两位,因为Git可能会找到多个版本号,就无法确定是哪一个了)
查看历史命令:git reflog用来记录你的每一次命令

(15)强制更新某文件:

如果git fetch输出空,则可以使用git pull获取
在这里插入图片描述

(16)放弃本地修改,并强制拉取更新

开发时,对于本地的项目中修改不做保存操作(或代码改崩),可以用到Git pull的强制覆盖,具体代码如下:

// git fetch 指令是下载远程仓库最新内容,不做合并
// git reset 指令把HEAD指向master最新版本
git fetch --all
git reset --hard origin/master
git pull //可以省略

猜你喜欢

转载自blog.csdn.net/u011608531/article/details/107558350