Git基本操作

image.png
  • Remote:远程仓库

  • Repository:本地仓库

  • Index/Stage:暂存区

  • workspace:工作区

常用命令:

1、新建代码库

# 在当前目录创建一个git代码库
git init

# 新建一个目录,将其初始化为git代码库
git init [project_name]

# 从远程仓库clone一个git代码库到本地
git clone [url]

2、本地仓库配置

# 展示本地的git配置
git config list

# 设置本地git的用户名、邮箱等
git config [--global] user.username "uname"
git config [--global] user.email "example.@xxx.com"

# 查看本地git的用户名和邮箱等
git config [--global] user.username
git config [--global] user.email

3、增加/删除文件

# 添加单个文件
git add [fileName]

# 添加多个文件
git add [fileName1] [fileName2] ...

# 添加当前目录下的所有文件
git add .

# 添加时,每遇到变化时,都要求再次确认,即同一文件多处改变,需要确认多次
git add -p [fileName]

# 删除工作区文件,将删除的文件放入暂存区
git rm [fileName] [fileName] ...

# 修改文件名
git mv [oldName] [newName]

4、代码提交

# 提交整个暂存区到仓库
git commit -m "注释"

# 提交暂存区的指定文件到仓库
git commit [fileName1] [fileName2] -m "注释"

# 提交

参考文章:一篇文章,教你学会Git

image.png

Git常用操作

1、从远程获取代码
git clone git clone ssh://git@git.sankuai.com/~duoshilin/test.git
2、查看本地文件状态
git status
    绿色:添加到了暂存区
    红色:修改过但未添加到暂存区
3、提交代码到远程
    ①添加到暂存区 
        git add filename1,filename2
        git add .
        撤销添加到暂存区
        git reset HEAD filename
    ②提交到本地代码仓库
        git commit -m "注释必填"
    ③提交到远程代码仓库
        git push origin 本地分支名:远程分支名(没有可自动创建)

    附:可进行强制提交覆盖上次的分支
        git commit --amend
        git push origin 本地分支名:远程分支名 --force

        本地撤销为push前的版本,一般用于push后发现多提交
        git reset --soft HEAD~1
        git status 
        修改
        git commit -m ""
        git push origin 本地分支名:远程分支名 --force

4、分支管理
    ①创建并切换到新分支
        git checkout -b newBranchName   
        //checkout 的-b参数表示创建并切换,相当于以下两句话
        git branch newBranchName
        git checkout newBranchName
    ②查看分支
        git branch

5、将本地代码放到一个空的仓库中
    cd existing-project
    git init
    git add --all
    git commit -m "Initial Commit"
    git remote add origin ssh://git@git.sankuai.com/~duoshilin/test.git
    git push origin master

6、版本回退
    git log -- 查看commitid
    git reset (–mixed) ${commitid}
        -- 此为默认方式,不带任何参数的git reset,即时这种方式,它回退到某个版本,只保留源码,回退commit和index信息。 
    git reset –soft ${commitid}
        -- 回退到某个版本,只回退了commit的信息,不会恢复到index file一级。如果还要提交,直接commit即可。 
    git reset –hard ${commitid}
        -- 彻底回退到某个版本,本地的源码也会变为上一个版本的内容。 

    git push origin HEAD --force

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。