git的用法步骤讲解

1、创建全局的本地用户名

git config --global user.name "teamemory"
git config --global user.email "xx@qq.com"

2、创建公钥

ssh-keygen -t rsa -C "xxx@qq.com"   同时把公钥添加到github的ssh上面

3、克隆远程仓库到本地

git clone https://github.com/teamemory/spider.git
git checkout -b "zj" (克隆下来文件后,然后创建一个分支)

4、将本地代码传到本地仓库

#   git rm -r --cached .   (清空缓存,这个有时候需要)
git status 这个看更改了哪个文件
git add \* 或者git add . (放到缓存区) 如果只提交某一个文件 git add xxx.vue git commit -m "wrote a readme file"

5、广播到远程仓库

git push origin master (这里的master可以修改为自己的分支)

6、更新

git pull origin zj (从某个分支上面拉下数据)

the end !!

 

综上,常用的几个git命令如下:

git clone https://github.com/teamemory/spider.git
git checkout -b "zj"  (克隆下来文件后,然后创建一个分支)
git status   这个看更改了哪个文件
git add * 或者git add . 或者 git add \* (放到缓存区) git commit -m "wrote a readme file"
git push origin master (这里的master可以修改为自己的分支)
git reset --hard HEAD   (本地代码回退到线上的最新提交的版本)
git log ----查看提交记录
git reset --hard 随机的gitlog产生的串 -----回退到某个版本
git push origin HEAD --force 回退后,如果要更新远程,需要强推
git reflog ---用来记录你的每一次命令 ,可以回到未来(回退了,但是后悔了)
git remote add origin xxxx  (把本地的仓库,和远程的关联)

git checkout . (可以把还未git add 修改内容全部还原到以前未修改的样子)
git checkout -- xxx.txt 将某个文件回退修改(该已经修改的文件还未git add )

当手头工作没有完成时,先把工作现场git stash一下,然后去修复bug,修复后,再git stash pop,回到工作现场;(这样的话,不需要切换分支前操作git add \* git commit )
 
git branch --set-upstream-to=origin/dev dev  ( 可以设置git pull 默认的合并当前分支,如果不设置一般编辑器也会提示,按照要求配置即可  )


补充:
如果本地的某个文件不想提交,而线上同样已经保留一份,怎么可以忽略提交某个文件? 方法如下:
git update-index --assume-unchanged py_aucion/settings.py // 红色部分为要忽略提交的文件
git update-index --no-assume-unchanged 文件路径 // 恢复某个文件的跟踪

注意;
.gitignore 只会对未加入版本控制的文件有效,如果你已经加入过了,那这个文件就帮不了你了


查看全部分支   git branch  

删除本地分支: git branch -d 分支名


强制删本地:   git branch -D 分支名


删除远程分支:  git push origin --delete 分支名

 

 

其他:

工作区,暂存区,版本库,远程仓库

 

对于合并代码,理论上,你可以永远将分支推送到远程,那么你合并代码,就使用git pull origin xxx 来合并代码。(相当于  git fetch + git merge)

但是,如果你只是本地切出一个分支开发,并没有推送到远程,那么你合并代码,需要这样处理git merge develop (把develop的代码合并到master)。

所以,git merge 真正合并,但是我用git pull 也可以变相实现。

 

 

打标签:

git tag v0.9 f52c633  (给某个提交记录打个标签,作用就是为了更加语义化,没其他作用)

git tag -a v0.1 -m "version 0.1 released" 1094adb  (打一个语义化的标签)

posted @ 2018-03-16 11:00  茶记忆  阅读(310)  评论(0编辑  收藏  举报