Git使用Git前端大杂烩

git使用总结

2018-07-31  本文已影响0人  w如弈如意c

看了以前自己写的总结,有一些还是对别人有意义的,打算认真归纳下,陆续发布不出来。

就今天给公司新来的前端实习生做了关于git使用的培训,将自己前两天准备的文档做分享,也算是自己使用git的一次总结。

本地操作

1.什么是git

可以查看git配置列表

// git config --list 

设置

$ git config --global user.name "你的git用户名"    
$ git config --global user.email "你的git邮箱"

4.git的初始化

git init

5.git中的三个区操作详解

git add . // 添加全部

-----git status 查看git状态,红色文件表示代码在工作区,绿色文件表示暂存区。

git status   // 查看git状态

-----git rm --cached 文件名,取消暂存,git rm --cached . -r 取消所。

git rm --cached 文件名 // 取消暂存
git rm --cached . -r  // 取消所所有暂存
git commit -m 注释  // 将暂存区代码提交到版本库
git log  // 提交记录,包含版本号,我们能通过版本号找历史代码

6.git diff,查看不同
----- 工作区和暂存区比较:

git diff

----- 工作区和历史区比较:

git diff master(分知名)

------ 暂存区和历史区比较:

git diff --cached 

7.撤销操作
撤销回git add的内容:git reset Head "文件名" 或 .

git reset Head "文件名"
git reset Head .

撤回文件(从暂存区中将工作区内容覆盖掉):git checkout "文件名" ,这个操作先从缓存区撤销,缓存区无内容,从历史区域撤销
有的时候我们希望提交时合并到上一次的提交 git commit --amend

git commit --amend

8.回到固定版本
git log,产看提交记录(含id),按“q”退出,或者按“/”搜索

git log  // 产看提交记录(含id),按“q”退出,或者按“/”搜索

方法一:git reset --hard commit_id,这种方式会用这个版本覆盖工作区和暂存区,git log看不到版本后的id了,用git reflog,能看到所有提交,git reset --hard HEAD^,回到上一个版本,git reset --hard HEAD^3,回到倒数第三个版本

git reset --hard  commit_id  // 回到具体某个版本,此时it log看不到版本后的id了
git reflog  // 能看到所有提交记录,包裹回到某个版本之后的提交记录
git reset --hard  HEAD^  // 回到上一个版本
git reset --hard  HEAD^3  // 回到倒数第三个版本

方法二: git checkout commit_id,恢复某个版本文件:git checkout commit_id filename 某个文件

git checkout commit_id
git checkout commit_id filename 某个文件

9.分支管理
-----git branch ,查看分支

git branch

-----git branch 分知名 ,创建分支

git branch 分知名

-----git checkout 分支名,切换分支

git checkout 分支名

-----git branch -D 分知名,删除分支(不能删除当前所在分支)

git branch -D 分知名

-----git checkout -b 分支名,创建并切换分支

git checkout -b

-----git merge 分知名,合并分支

git merge 分知名

注意:在工作区新建的文件,在没commit前,是所有分支的,只有在commit后才确定属于哪个分支,如果文件有修改,默认不能切换分支,需要提交到暂存或者历史区,如果不想暂存或者提交到历史区,可以用git stash 暂存文件,切回分支时可以git stash pop,暂存被释放

10.合并时冲突解决
如果两个人同时改了一个文件,提交时会发生冲突,这是git会把两个人的提交保留,需要手动修改冲突,留下想要的结果,再提交
11.添加忽略文件,.gitignore文件

$ touch .gitignore // 创建.gitignore文件
$ echo .DS_Store // 忽略
$ echo node_modules // 忽略
$ echo .idea // 忽略

12.git不会上传空文件夹,如果需要上传,添加.gitkeep


远程仓库

1.首先得有线上代码仓库,可以是github或者gitLab,或者其他仓库
2.关联到远程仓库
git remote add origin 仓库地址,origin是仓库别名,可以添加多个
git remote -v ,查看远程仓库信息
git remote rm 仓库名,删除关联·

git remote add origin 仓库地址
git remote -v
git remote rm 仓库名

3.提交代码到你远程仓库
git push origin master,可以git push -u origin master,这样下一次提交就咳哟i直接git push提交到origin仓库

git push origin master
git push -u origin master

4.更新代码,git pull
线上和线下代码不一样时,我们会发现push代码时会失败,这也是我们实际工作中遇到最多的。先git pull origin master(一般可直接git pull),然后改下注释,按esc,然后shift+z退出,在git push origin master

如果有冲突,先手动解决冲突再合并
5.github上建立静态页,建gh-pages分支,来发布我们的静态页
------ 在项目中创建一个gh-pages分支,在分支内建静态页,如index.html
------ 将分支提交到线上仓库
------ 找到提供给你的网站,在setting中,找到gitHub pages,下面有个地址就是gh-pages分支的静态页
6.将向上仓库代码拉到本地
git clone 仓库地址
git clone 仓库地址  项目新名,可改项目名字

默认就是git 仓库,且有origin地址,可以将代码提交到自己的仓库里

注:fork别人的代码,可以New pull request提交给原作者

7.在github上的setting可以设置Collaborators,设置共同开发的人(共享者可直接push代码,拥有最大权限)
8.git可视化操作
git自带界面话GUI,webStorm和vscode等编辑器也能实现可视化




另外附上工作中经常用到的linux命令:
1.pwd 打印工作目录
2.删除文件夹 rm -rf 文件夹
3.删除单个文件,rm 文件名
4.建立目录,mkdir 目录名
5.ls -al 显示目录下所有文件
6.touch 文件名 ,创建文件
7.cat 文件名,查看文件
8.vi 文件名 i:插入模式 esc:退出编辑模式 q!强制退出 :wq 保存并退出
9.echo输入文件内容,echo '内容' > 文件名,一个>表示写入,两个>表示叠加

上一篇下一篇

猜你喜欢

热点阅读