git简单使用

一、区域(4个)

 

工作区————>暂存区————>本地仓库————>远端仓库(remote repository)  (工作区就是在编辑器上修改代码时候的区域 )

     add        commit       push

 

二、账号

git config --global user.name "xxx"  设置git的用户名

git config --global user.email "xxx@xxx.com"  设置用户邮箱

git config user.name  查看当前登录账号(就是user.name

git config user.email  查看当前登录邮箱

git config --system --unset credential.helper   重置

 

三、仓库

git init  初始化:创建本地git仓库,创建之后就会在当前目录生成一个.git的文件

git remote add origin 'https://test.com/test.git'  添加远端仓库(origin是远程主机名)

git clone 'https://test.com/test.git'  复制远端仓库到本地仓库(假设远端地址是:https://test.com/test.git)

 

四、分支

git branch -a  查看本地和远端分支(a代表all)

git branch test  创建test分支(只是在本地创建了test分支,但是远端并没有test分支)

git checkout test  切换到test分支

git merge test  把test分支合并到dev(假设当前分支是dev)(即把test合并到dev:要先切换到dev分支,然后再执行本条命令)

git branch -d test  删除本地test分支(d代表delete)

git push origin --delete test  删除远端test分支

 

五、修改好代码后,要推送到分支上的操作(大概分以下4步)

 

1. 获取更新  

  git fetch  将远端仓库上所有分支的更新取回本地(但是没有合并。如果有新的内容的话,要自己主动合并)

  在多人开发的时候。在推送代码之前,要看别人有没有修改过代码。如果别人有修改代码,但是我们没有拉取别人的代码就直接推送的话,就可能把别人的代码给覆盖了,导致冲突或者别人的代码无效等等。

2.暂存代码

  git stash  把自己修改的代码临时保存起来。(假设暂存到stash@{0})

  git stash save 'message'  和上一条一样,就是增加一个备注信息

 

  git stash list  查看暂存列表

  git stash pop stash@{0}  应用stash@{0}暂存,并删除stash@{0}暂存。(这步一般放在拉取代码之后,即拉取代码后再应用暂存)

  为了避免与远端代码有冲突,或者是修改后要切换分支,或者是增加新功能的时候突然要改bug等等。(但暂存代码不是必要的,如果远端没有更新就不用这一步)

  注意:这里的暂存不是把代码保存到暂存区,可以理解为一个保存临时代码的地方。

3.拉取分支

  git pull  获取远端仓库某个分支的更新,再与本地指定分支合并。(和git fetch命令有区别,具体可百度)

  拉取后或者应用暂存后可能有冲突,解决一下再推送。

4.推送分支

  git add test.html  将test.html文件从工作区添加至暂存区(假设修改的文件是 test.html) (一般用 git add . 就可以)

  git add .  将当前目录下的所有文件从工作区添加至暂存区

 

  git commit -m "message"  将暂存区的文件提交到本地仓库(没有commit之前和在哪个分支没有关系,所以commit的时候要注意当前分支)

  git push -u origin test  将本地test分支推送到远端test分支(假设当前在test分支)(-u 等于 --set-upstream的简写)

  上面的命令有3个功能:创建(如果没有test分支,那么远端将创建test分支)+关联(关联远端的test分支,即使远端有test分支,但没有和本地的test分支关联也不行)+推送(一般第一次推送才用这调命令,之后用下面一条命令就可以)

 

  git push  将本地test分支推送到远端test分支

 

六、其他

git status  查看修改的文件状态(红色:已修改但还没提交到暂存区,绿色:已经提交到暂存区)

命令q  退出(如果在git里进入什么操作,按q就可以退出) 

. gitignore  忽略要提交的文件  在项目根路径下的.gitignore文件(这是一个txt文件)

从远端拉完代码,如果远端有test分支,本地没有,那么要直接检出远端的test分支(而不能直接在本地创建test和拉取,因为是不一样的)

也推荐一个git的软件——Sourcetree,里面的工作流比较好用,或者也可以用phpstorm编辑器里的git功能。

 

posted @ 2020-07-14 09:21  或许从前  阅读(146)  评论(1)    收藏  举报