git 操作命令整理

 

1、git,github ,gitlab区别

•  Git是一个版本控制软件

•  GitHub与GitLab都是⽤用于管理理版本的服务端软件

•  GitHub提供免费服务(代码需公开)及付费服务 (代码为私有)

•  GitLab⽤用于在企业内部管理理Git版本库,功能上类似于GitHub

2、git文件的三种状态

• 已修改(modified)

• 已暂存(staged) --------可以通过gitadd命令

• 已提交(committed)---------可以通过git commit命令

 

 

 

3、windows上下载git  https://git-scm.com/download/win

4、设置提交的user.name和user.email

对于user.name和user.email来说,有3种设置方式

a./etc/gitconfig(全局,几乎不会使用),设置命令git config –-system(优先级最低)

b.~/.gitconfig(很常用) ,设置命令git config –-global  (常用)

c. 针对特定项目的,.git/config文件中,设置命令git config –local (优先级最高)

 举例如下:

git config --global user.name 'ttitfly'

git config --global user.email'ttitfly@163.com'

git config可以查看使用说明

 

可以查看配置的值,例如

查看所有的配置值

 

5、配置公钥到gitlab中

Gitlab中配置公钥的目的:避免每次提交需要输入用户名和密码

Git-bash命令窗口中生成公钥私钥:

输入:ssh-keygen,然后连续回车,会生成id_rsa.pub文件。

然后 登陆gitlab: http://101.37.48:8000/

登陆成功后:

 

 
输入公钥:

 

 

 

6、从远程仓库下载代码

第一次从远程仓库下载

Git clone远程仓库地址

Git clone远程仓库地址 字符串xx  #如果带上字符串xx,则会在本地创建字符串xx目录,不会使用默认的字符串目录

 

比如gitclone git@101.37.:java-dev/mytest.git

 

7、推送和拉取代码

关联git remote add origin https://gitee.com/maha/pig-ttitfly.git

git push origin master:master
 
git push -u origin master 做关联,以后直接git push即可

 

Git push推送代码到远程服务器

Git pull从远程拉取代码

 

8、初始化远程仓库文件【管理员操作】(远程仓库别名习惯命名为:origin)

git remote add dev https://gitee.com/maha/pig-ttitfly.git

dev为远程仓库别名 后面http 为远程仓库地址

配置完成后,可使用 git remote -v 命令查看是否生效

使用push命令,将代码提交到远程对应分支

git push dev master:dev-init
 
git pull <远程主机名> <远程分支名>:<本地分支名>
 
#dev 为设置的远程仓库别名,master为本地分支名,dev-init为远程分支名
 
git push -u dev master 做关联,以后直接git push即可
 
git remote show显示本地仓库关联的所有远程仓库的别名
git remote show 远程仓库别名 ,显示这个远程仓库的详细信息
 
git config –global push.default simple默认simple 模式(git push推送时本地将主动推送到远程关联的分支,而不是推送到相同的分支名
 
 

 

 

 

9、其他命令集合

一、删除文件git rm 所执行的逻辑

1、删除文件

2、将删除的文件状态变更为暂存区

如果对暂存区删除的文件做恢复需要操作2步

1、git resete Head 文件名 --à将待删除的文件从暂存区恢复到工作区(修改区)

2、git checkout – 文件名 -à丢弃工作区中所有修改

 

rm 所执行的逻辑

1、直接删除了文件,文件并未纳入到暂存区,需要调用gitadd 命令将删除纳入到暂存区

 

二、修改文件名git mv

执行逻辑

1、修改文件名

2、将修改的文件状态变更为暂存区

 

三、修改注释

Git commit–amend –m ‘修改上次注释’

 

四、gitlog

Ctrl+b往前翻页

Ctrl+f往后翻页

Git log–n 查看最近几条日志

Git log–-pretty=oneline

git log --pretty=format:"%h - %an,%ar : %s"

 

四、查看帮助

Git help add 查看git add的帮助

Git help commit 查看git commit 的帮助

 

五、git ignore

创建文件.gitignore,要忽略的文件写入到.gitignore文件中

/todo #仅仅忽略项目根目录下的todo文件,不包含subdir/todo文件

Build/ #忽略build/目录下的所有文件

Doc/*.txt#忽略doc目录下的txt文件,但不包含doc/subdir/a.txt文件

Doc/*/*.txt#忽略doc目录下的一级子目录下的所有txt文件

Doc/**/*.txt#忽略doc下所有层级子目录下的txt文件

 

六、gitbranch列出所有分支

Gitbranch new_fenzhi 创建一个新的分支

Gitcheckout 分支名,切换到新的分支

Gitbranch –d 分支名,删除一个分支

Gitcheckout –b new_fenzhi创建一个新的分支,并且切换到该分支

Gitmerge new_fenzhi ,将new_fenzhi上的代码合并到当前分支上。

git branch –a查看本地和远程所有的分支

git branch –av查看本地和远程所有的分支,并将分支最后一次提交的注释内容展示出来

 

 

七、Head指向的是当前分支

Master指向提交

 

八、版本回退

Git reset–hard HEAD^回退上个版本

Gitreset –hard HEAD^^回退上上个版本

Gitreset –hard 提交唯一标识符,自动回到某个版本

Gitreset –hard HEAD~n回退到倒数第n个提交

Gitreflog 查看操作日志

Git log查看提交日志

 

Gitcommit –am ‘dddd’ 合并git add和gitcommit (只对已存在的文件有效,新增的文件还是要一步步来)

 

图形界面gitk或者git gui, github desktop

 

 

GIT的提交id(commit id)是一个摘要值,这个摘要值实际上是个sha1计算出来的

 


阅读更多
上一篇left join 中on后的条件和where后条件的区别
下一篇git 操作命令实战整理
想对作者说点什么? 我来说一句

Git常用操作命令收集

2015年08月19日 3KB 下载

Git自我整理笔记

2018年08月05日 169KB 下载

git命令汇总以及命令注释

2017年07月28日 32KB 下载

没有更多推荐了,返回首页

关闭
关闭
关闭