Git使用

创建第一个项目

1、在码云上创建一个项目 Sunny(随意)

2、安装GIT ,配置git

`git config --global user.name "你的名字或昵称"`
`git config --global user.email "你的邮箱"`

3、在本地创建一个目录 D:/Sunny

4、打开git cmd,切换到上面的目录,完成本地项目初始化

git init 
git remote add origin <你的项目地址> //https://gitee.com/你的码云用户名/Sunny

5、第一次提交项目

git pull origin master //更新
git add .//或者 git add 文件名
git commit -m '添加注释'
git push origin master //上传

SSH

因为GitHub需要识别出你推送的提交确实是你推送的,而不是别人冒充的,而Git支持SSH协议,所以,GitHub只要知道了你的公钥,就可以确认只有你自己才能推送。

  • 创建SSH Key
    ssh-keygen -t ras -C "[youremail]"
    在用户下会生成.ssh目录,目录下会有id_rsaid_rsa.pub这两个文件。id_rsa.pub是公钥,另外一个是私钥。
  • 设置远程仓库里的SSH Key
    在设置中,添加上公钥内容

Git概念

  • 工作区和暂存区

git add就是将文件修改的内容从工作区添加到暂存区

Git基本操作

  • 从码云克隆项目

git clone 远程仓库地址

  • 修改仓库名

一般来说 默认的仓库名都是origin
git remote rename '旧名字' 新修改的名字

  • 查看当前仓库对应的远程仓库地址

git remote -v

  • 关联仓库

git remote add origin [地址]

  • 推送

git push -u origin master
(第一次推送当前分支master与远程仓库的master分支建立追踪关系,建立之后,使用git push/pull命令会自动推送/更新追踪关系的远程分支)
git push origin master

  • 从远程更新下载:git pull
    ( 如果git pull提示no tracking information,则说明本地分支和远程分支的链接关系没有创建)
  • 提交

git add [fileName]提交到缓存区
git commit -m "[msg]"提交

  • 删除

git d [fileName]
删除文件:git rm [fileName]

  • 分支

本地创建切换分支:git checkout -b [name]
(上面的句子包括以下两个操作)
创建分支:git branch [name]
切换分支:git checkout [name]
查看所有分支: git branch
查看所有分支的版本信息: git branch -v
合并分支:git merge [name](合并分支时候,GIT会使用Fast forward模式,删除分支后,会丢掉分支信息。)
普通合并分支:git merge --no-ff -m "[msg]" [name](在合并时,会生成新的commit,可以保留分支的历史记录)
删除分支:git branch -d [name]
强制删除未合并的分支:git branch -D [name]
解决冲突(当git无法自动合并分支的时候,需要解决冲突在提交)
查看分支合并图:git log --graph
查看本地分支和远程分支的追踪关系: git branch -vv
克隆的时候默认克隆master分支,其他分支需在本地创建并与远程关联:git checkout -b [name] origin/[name]
设置本地分支与远程分支的链接:git branch --set-upstream-to=origin/[name] [name]

  • stash

隐藏现在的工作区:git stash(可以用于修复bug)
显示stash中隐藏的工作区:git stash list
恢复隐藏的工作区:git stash apply ([listName])
删除stash中储存的工作区:git stash drop
恢复并删除: git stash pop

  • 标签管理

创建标签:
1、git tag [tagName]
2、git tag -a [tagName] -m "[tag desrible]"
3、git tag [tagName] [commitId]
罗列标签:git tag
查看标签信息:git show [tagName]
删除标签:git tag -d [tagName]
推送标签到远程库:
1、git push origin [tagName]
2、git push origin --tags
推送到远程后删除标签:
(先删除本地的标签)
git push origin :refs/tags/[tagName]

  • 版本

版本回退:
1、git reset --hard [commitId]根据commit号来回退
2、git reset --hard HEAD~[number] 回退至上N个版本
查看历史命令:git reflog
丢弃工作区的修改:git checkout -- [file]
丢弃缓存区中的内容:git reset HEAD [file]

  • 日志

git log
简化log:git log --pretty=oneline

你可能感兴趣的:(Git使用)