Git指令总结

1. 常用命令

git help
git init //初始化本地代码仓库
git clone <仓库url> //克隆仓库内源码
git checkout <branch> //切换到指定分支
git submodule init //初始化子模块
git submodule update //同步子模块代码
git branch //查看当前分支和本地全部分支
git branch <branchname> //创建新分支
git branch -D <branchname> //删除指定分支
git status //查看当前状态
git add . //将当前目录下全部修改加入提交队列
git add <filename>//添加指定文件到提交队列
git add --all //将当前目录下全部修改(包含删除动作)加入提交队列
git commit -m "commit log" //将提交队列内的变更提交到本地仓库
git commit -m 'commit log' //功能同上,日志可换行
git push // 将本地仓库变更提交到主仓库和他人共享
git pull --rebase //同步本地仓库为最新,俗话把最新代码拉下来
git merge <branchname> //将“branchname”代码合并到当前所在分支
git fetch //同步
git diff //查看当前全部未add的文件变动
git diff <filename> //查看指定文件文件(未add)的变更
git tag //查看全部tag

  

2 . 常规用法

2.1 . 初始化本地仓库

创建仓库后可以用于管理文件的版本,包含各种文档和代码

mkdir [mydir]
cd [mydir]
git init 

2.2 . 将代码提交到仓库

git add [filename]
git commit -m ["#1 commit desc"]

2.3 . 查看当前状态

用以查看是否有修改还没有提交到git进行管理等等

git status 

2.3 . 使用branch 管理不同版本的文件

2.3.1 . 创建分支

git branch [new_branch_name] 

2.3.2 . 切换分支

git checkout [my_branch_name]

2.3.3 . 删除分支

git branch -D [my_branch_name]

2.4 . 使用tag标记文件特性

2.4.1 . 创建tag

git tag [new_tag_name]

2.4.2 . 切换到指定tag

git checkout [my_tag_name]

2.5 . 还原操作

2.5.1 . 还原指定文件

git checkout [file_name]

2.5.2 . 还原本次操作(全部修改)

git reset --head

2.6 . 回退版本

2.6.1 . 回退到某一个tag

git checkout [my_tag_name]

2.6.2 . 回退到某次提交

git show 

3 . 扩展用法

3.1 . 将本地代码推送到远程(gitlab)空仓库

3.1.1 . 从 gitlab 上复制 项目的ssh地址 如:

git@git.domain.com:group/project.git

3.1.2 . 在自己的代码的目录上 输入

git remote add origin  git@git.domain.com:com:group/project.git

3.1.3 . 然后如果你让github给你智能生成过gitignore文件的话,那需要先pull一次

git pull origin master

3.1.4 . 最后 将代码 push到远程仓库

git push -u origin master

3.2 . 代码迁移到 Gitlab上

代码仓库的迁移主要针对原先代码不在 gitlab上,需要将原先 git 或 svn的日志记录,分支以及tag都迁移到 gitlab 上。

3.2.1 . 旧Git仓库迁移到 gitlab上

从原地址克隆一份裸版本库,比如原本托管于 GitHub

git  clone --bare  git://github.com/username/project.git

3.2.2 . 然后到新的 Git 服务器 (gitlab) 上创建一个新项目,etdroid。以镜像推送的方式上传代码到 gitlab 服务器上

cd  project.git
git push --mirror git@git.domain.com:group/project.git

3.3 . 删除本地代码

rm -rf project.git

  

3.3 . 旧Svn仓库迁移到 gitlab上

3.4 . 克隆远程项目到本地

新建工作目录(如有需要)并且进入

目录内目录内右键打开git bash

克隆主工程源码

git clone <url>

例如要克隆易洽源码

git clone git@git.domain.com:group/project.git

 切换分支(如有需要)

git checkout <branch>

  例如要切换到master分支:

git branch master

初始化子模块

git submodule init

同步子模块代码

git submodule update

将子模块切换到需要的分支(如有需要)

git submodule foreach git checkout master

  

4. 创建自己的工作分支

代码仓库中有master和production两个分支,都是保护分支不能直接提交修改的代码。

因此需要创建自己的工作分支

切换到自己要复制的分支(如有需要)

git checkout <branch name>

  例如:

git checkout master

 创建工作分支

git branch <branch name>

  例如:

git branch bugfix_#123

  

5 . 删除远程分支和

在Git v1.7.0 之后,可以使用这种语法删除远程分支。

git push origin --delete <branchName>

5.1 . 删除远程tag:

git push origin --delete tag <tagname>

  否则,可以使用这种语法,推送一个空分支到远程分支,其实就相当于删除远程分支:

git push origin :<branchName>

  这是删除tag的方法,推送一个空tag到远程tag:

git push origin :<branchName>

  这是删除tag的方法,推送一个空tag到远程tag:

git tag -d <tagname>
git push origin :refs/tags/<tagname>

  

如何使用Git建立本地仓库并上传代码到GitHub

1.到本地项目文件夹右键选择git bash here

2.输入个人信息(代码提交者)

git config --global user.name "xxxx" 

git config --global user.email xxxxx@qq.com  

3.

在本地项目目录创建本地仓库

 git init      

输入命令后项目目录会有一个隐藏的.git文件夹

上传所有代码到本地仓库    (记得add 后面空格后一个“.”)

git add .

这样就把代码上传到本地仓库了

 git commit -m "initial commit"

关联本地仓库并上传代码

git remote add origin https://github.com/Yanyf765/hr_sys.git(想上传到的GitHub地址)

git push origin master

  

原文地址:https://www.cnblogs.com/wuyepeng/p/9737650.html