Git使用教程及常用命令大全
一、git命令名词解释
1、添加/跟踪/暂存:添加到本地索引
git add 文件名
2、提交:提交到本地仓库
git commit -m '注释'
3、推送:将提交到本地仓库的所有更新提交到服务器
git push mycode release
4、更新/拉取:将远程最新的仓库或拉到本地,两种方法
a) 从远程获取最新版本,不会自动合并(merge):
git checkout release
git fetch origin release
b) 从远程获取最新版本并自动merge:
git checkout release
git pull origin release
方法:
a) 推荐先使用第一种方法,更安全些,先git fetch
b) 再检测是否有哪些更改或是否有冲突:
git log -p release..orgin/release
或
git log orgin/release ^release
c) 最后再合并:
git merge origin/release(将origin/release合并到当前的分支)
二、基本步骤
1、进入web端页面,从主仓储派生一个自己仓库
2、新建本地系统文件夹
3、进入文件夹,右键选择git bash
4、首次下载源码
git clone 派生仓库的地址
5、右键选择git gui > edit > option ,左侧设置名字和邮箱(必须是注册时的邮箱)
6、设置远程地址:
先:进入包含.git的目录,右键选择git bash
再:git remote add mycode 派生地址
7、进入开发工作
8、提交代码:
a)提交到本地索引 git add 文件名或点(.)
提示1:在add前,可以用git status查看有哪些文件被修改
提示2:输入"git add " 可以不断按两次tab键快速定位本地改过的文件,如下图:
![]()
提示3:VS2013自动支持,如下右键提交即可
![]()
b)提交到本地仓库 git commit -m '注释必填'
c)提交到远程服务器的我的派生仓库:
git push mycode release
(注意:本地已经测试小组没问题后执行)
9、合并请求
a)进入主仓库 > 合并请求 > 创建合并请求
b)再次确认需要提交的文件及内容无误,最后点提交
注意:从本地的release分支 合并到 总的release分支
PS:在具体实践中,都用更新提交都使用release分支,不用master
-------------
三、其它:
1、.net项目开发,需要忽略 /bin/ /obj/ .user .suo 等文件
需要在.git同级目录(即解决方案目录)添加一个文件,名为 ".gitignore"
内容为:
**/bin/
**/obj/
*.user
*.suo
![]()
2、本地切换分支:git checkout 分支名称
本地新建分支:git checkout -b 分支名称
查看本地有哪些分支:git branch
3、建议
建议在做新任务时本地新建分支,完成后合并到本地的resease分支
若需要开发其它项目,可以切换到其它分支开发。这种方法可能比git statsh更好
4、实用命令
a、删除已跟踪(add)的文件
git rm --cached '文件路径'
b、删除已跟踪的文件,并同时删除物理文件
git rm --f '文件路径'
c、查看暂存前后的变化,即查看未暂存的文件更新了哪些部分
git diff
d、查看暂存与上次提交时的快照之间的变化或差异
git diff --cached
e、若不小add了一个文件a.txt,需要撤回:
git reset a.txt
f、查看本地有,远程没有提交
git log 本地分支名称 ^远程分支名称
反之,远程有本地没有
git log 远程分支名称 ^本地分支名称
g、查看本地已添加的远程及地址
git remote -v
h、查看本地所有分支
git branch
i、若显示太多信息,结果很久都不行,可以在按 q 结束
j、显示最近3次的更新的文件修改统计信息
git log --stat -n 3
k、从服务端 总的分支release 更新到 本地仓库分支release
git checkout release
git fetch origin release (假设你电脑的origin是总的release分支)
l、重新定位本地仓库的提交点
git log -n 2 (获取hash值)
git reset dc6f6dade019663f2948a83aead8b0c92e1c3fce
删除本地分支:删除本地分支 git branch -d xxxxx
查看
git branch -a
删除远程分支git branch -r -d origin/branch-name
git push origin :branch-name
1、添加/跟踪/暂存:添加到本地索引
git add 文件名
2、提交:提交到本地仓库
git commit -m '注释'
3、推送:将提交到本地仓库的所有更新提交到服务器
git push mycode release
4、更新/拉取:将远程最新的仓库或拉到本地,两种方法
a) 从远程获取最新版本,不会自动合并(merge):
git checkout release
git fetch origin release
b) 从远程获取最新版本并自动merge:
git checkout release
git pull origin release
方法:
a) 推荐先使用第一种方法,更安全些,先git fetch
b) 再检测是否有哪些更改或是否有冲突:
git log -p release..orgin/release
或
git log orgin/release ^release
c) 最后再合并:
git merge origin/release(将origin/release合并到当前的分支)
二、基本步骤
1、进入web端页面,从主仓储派生一个自己仓库
2、新建本地系统文件夹
3、进入文件夹,右键选择git bash
4、首次下载源码
git clone 派生仓库的地址
5、右键选择git gui > edit > option ,左侧设置名字和邮箱(必须是注册时的邮箱)
6、设置远程地址:
先:进入包含.git的目录,右键选择git bash
再:git remote add mycode 派生地址
7、进入开发工作
8、提交代码:
a)提交到本地索引 git add 文件名或点(.)
提示1:在add前,可以用git status查看有哪些文件被修改
提示2:输入"git add " 可以不断按两次tab键快速定位本地改过的文件,如下图:
提示3:VS2013自动支持,如下右键提交即可
b)提交到本地仓库 git commit -m '注释必填'
c)提交到远程服务器的我的派生仓库:
git push mycode release
(注意:本地已经测试小组没问题后执行)
9、合并请求
a)进入主仓库 > 合并请求 > 创建合并请求
b)再次确认需要提交的文件及内容无误,最后点提交
注意:从本地的release分支 合并到 总的release分支
PS:在具体实践中,都用更新提交都使用release分支,不用master
-------------
三、其它:
1、.net项目开发,需要忽略 /bin/ /obj/ .user .suo 等文件
需要在.git同级目录(即解决方案目录)添加一个文件,名为 ".gitignore"
内容为:
**/bin/
**/obj/
*.user
*.suo
2、本地切换分支:git checkout 分支名称
本地新建分支:git checkout -b 分支名称
查看本地有哪些分支:git branch
3、建议
建议在做新任务时本地新建分支,完成后合并到本地的resease分支
若需要开发其它项目,可以切换到其它分支开发。这种方法可能比git statsh更好
4、实用命令
a、删除已跟踪(add)的文件
git rm --cached '文件路径'
b、删除已跟踪的文件,并同时删除物理文件
git rm --f '文件路径'
c、查看暂存前后的变化,即查看未暂存的文件更新了哪些部分
git diff
d、查看暂存与上次提交时的快照之间的变化或差异
git diff --cached
e、若不小add了一个文件a.txt,需要撤回:
git reset a.txt
f、查看本地有,远程没有提交
git log 本地分支名称 ^远程分支名称
反之,远程有本地没有
git log 远程分支名称 ^本地分支名称
g、查看本地已添加的远程及地址
git remote -v
h、查看本地所有分支
git branch
i、若显示太多信息,结果很久都不行,可以在按 q 结束
j、显示最近3次的更新的文件修改统计信息
git log --stat -n 3
k、从服务端 总的分支release 更新到 本地仓库分支release
git checkout release
git fetch origin release (假设你电脑的origin是总的release分支)
l、重新定位本地仓库的提交点
git log -n 2 (获取hash值)
git reset dc6f6dade019663f2948a83aead8b0c92e1c3fce
删除本地分支:删除本地分支 git branch -d xxxxx
查看
git branch -a
删除远程分支git branch -r -d origin/branch-name
git push origin :branch-name