Git命令笔记

来源:互联网 发布:喜欢单曲循环的人 知乎 编辑:程序博客网 时间:2024/05/23 00:33
1、设置仓库全局用户名邮箱命令
git config --global user.name "Your Name"
git config --global user.email "email@example.com"

2、创建目录、进入目录、查看当前在哪个路劲命令
mkdir learngit
cd learngit
pwd

3、初始化仓库把这个目录变成Git可以管理的仓库
git init

4、查看隐藏文件
ls -ah

5、把文件添加跟踪或者说是添加到暂存区
git add readme.txt
git add *  把所有文添加跟踪


6、提交暂存区的所有文件到仓库
git commit -m "备注"

7、查看版本提价历史记录日志
git log

查看最近一次提交信息
git last

8、查看所有版本提交修改日志
git reflog

9、仓库版本回退到上一个版本、回退两个就HEAD^^ 。。。。以此类推。
git reset --hard HEAD^

10、回退到指定版本号
git reset --hard 3628164

11、查看文件状态
git status

12、查看工作区和版本库文件的区别
git diff HEAD -- readme.txt

13、撤销工作区的修改 --很重要,没有--,就变成了“切换到另一个分支”的命令
git checkout -- readme.txt

14、撤销暂存区未提交到版本库的修改放回工作区
git reset HEAD readme.txt

15、删除文件
git rm 111.txt
如果误删除未提交暂存区的用 git checkout -- 111.txt 命令撤销修改来恢复
如果已经提交到暂存区了就用 git reset HEAD 111.txt 命令撤销修改来恢复


16、远程仓库把本地仓库跟远程仓库关联命令
项目地址:https://github.com/yucaifu/gittestproject.git

把本地仓库跟远程仓库关联命令,先进入仓库目录再执行下面的命令
$ git remote add origin git@服务器地址:自己的账号名/项目名.git
$ git remote add origin git@github.com:yucaifu/gittestproject.git

删除与远程仓库的关联
git remote rm origin

把本地库的所有内容推送到远程库上:
$ git push -u origin master
在后续的把本地文件提交到远程仓库用 git push 即可
注意:
git add 111.txt :将文件添加跟踪  git add -f App.class  强制添加
git commit 111.txt -m "描述" :提交到本地仓库
git push :提交到远程仓库
$ git push origin master :推送到指定分支


如果提示权限问题请先设置sshkey秘钥
在git.bash.窗口输入

ssh-keygen -t rsa -C "930261723@qq.com"

Enter file in which to save the key (/c/Users/lenovo/.ssh/id_rsa):这里直接敲回车
Overwrite (y/n)? 这里输入y
后面设置秘钥的步骤直接敲回车不然每次提交更新代码都得输入秘钥。

操作成功后会在

C:\Users\lenovo目录下生成一个.ssh目录,内容如下

Id-rsa是你的私钥,用笔记本方式打开id_rsa.pub把里面的公钥复制到Github网址自己账户下面的SSH公钥下

sshkey公钥设置就成功了。

17、从远程仓库复制项目下来命令
方法一:git clone https://github.com/yucaifu/gittestproject.git
方法二指定账户:$ git clone git@github.com:yucaifu/gittestproject.git

Git支持多种协议,包括https,但通过ssh支持的原生git协议速度最快

18、创建并切换到分之
 git checkout -b 'development'

development分支名称,加上-b参数表示创建并切换,相当于以下两条命令
创建分支
$ git branch development
切换分支
 git checkout development

19、查看当前在哪个分支命令
$ git branch

20、分支提交到远程仓库
 git push -u origin development

平时提交修改代码到远程指定分支
git push origin ycf

更新远程代码修改到本地
git pull

21、合并指定分之代码到当前分支
git merge ycf

22、查看分支合并图
git log --graph

23、删除指定分支
git branch -d development

强制删除
git branch -D development

提交删除分支到远程就会把远程分支也删掉
git push origin :development  

24、merge合并分支时,如果没问题git默认使用Fast forward(快速合并模式),但这种模式下,删除分支后,会丢掉分支信息
    可以强制禁用Fast forward模式,Git就会在merge时生成一个新的commit。

git merge --no-ff -m "禁用快速模式合并" ycf
--no-ff参数,表示禁用Fast forward


25、把当前工作现场“储藏”起来(暂存)
git stash

查看被暂存起来的工作现场
git stash list

26、恢复现场
方式一:
git stash apply 恢复,但是恢复后,stash内容并不删除,你需要用git stash drop来删除
git stash apply stash@{0} 恢复指定的某次暂存
方式二:
git stash pop,恢复的同时把stash内容也删了
git stash pop stash@{0} 恢复指定的某次暂存

27、查看关联的远程仓库的信息
git remote -v

下面显示了可以抓取和推送的origin的地址。如果没有推送权限,就看不到push的地址
origin  git@github.com:michaelliao/learngit.git (fetch)  
origin  git@github.com:michaelliao/learngit.git (push)

28、本地分支和远程分支建立关联
git branch --set-upstream development origin/development

29、打标签
git tag v1.0

标签打在指定某个提交id上
git tag v0.9 6224937

用-a指定标签名,-m指定说明文字
git tag -a v0.1 -m "说明" 3628164

查看标签
git tag

查看某个标签信息
git show v0.9

30、删除标签
git tag -d v0.1

删除远程标签-先删除本地再提交到远程
git push origin :refs/tags/v0.9

31、推送标签到远程
git push origin v1.0

推送所有标签到远程
git push origin --tags

32、关联多个远程仓库

先删除原有默认名称为origin的远程仓库关联
git remote rm origin

再与远程仓库关联并设置远程仓库名称为github,不能用默认名origin
git remote add github git@github.com:yucaifu/gittestproject.git

再关联第二个远程仓库
git remote add gitee git@gitee.com:yucaifu/gittestproject.git

这样就关联多个仓库了
git push github master 指定仓库提交

33、检查过滤规则是否过滤掉某个文件
git check-ignore -v App.class

.gitignore在这个文件里设置需要忽略的文件如下:
/.settings
/target
.classpath
.project
/catalina.base_IS_UNDEFINED
.factorypath
.idea
*.iml
build

34、给git命令配置别名
git config --global alias.st status  :表示设置st代表status,使用的时候直接git st 就可以了
$ git config --global alias.co checkout
$ git config --global alias.ci commit
$ git config --global alias.br branch



原创粉丝点击