Git安装学习记录
1、下载:
https://gitforwindows.org/
2、安装:https://blog.csdn.net/chengyuqiang/article/details/54178683
3.安装完成之后在开始菜单找到Git Bash点击弹出命令行窗口
4、登录用户名和邮箱
1 git config -global user.name "Your userName"
2 git config -global user.email "xxx@163.com"
5、创建版本库
1.进入到计算机某个磁盘并创建文件夹存放git项目仓库(如myRepository)
1 $ cd D:\MyInstall\Github:
2 $ mkdir myRepository
3 $ cd myRepository
4 $ git init
Initialized empty Git repository in D:\MyInstall\Github\myRepository\.git
6、git命令
(1)git add <file>,注意,可反复多次使用,添加多个文件。
(2)git commit -m "注释",完成提交。
(3)git reset --hard commit_id 回退版本。
(4)git reset HEAD -- file:清空add命令向暂存区提交的关于file文件的修改(Ustage)
(5)git log可以查看提交历史,以便确定要回退到哪个版本。
(6)git reflog查看命令历史,以便确定要回到未来的哪个版本。
(7)git checkout -- file: 可以让没有add和commit的文件回到修改前状态。
(8)rm file:删除文件,但是不提交修改,可以通过git checkout -- file恢复。
(9)git rm file:删除文件,无法通过git checkout -- file恢复,必须通过git reset HEAD -- file才有用。
(10)ssh-keygen -t rsa -C "youremail@example.com" :在windows下(电脑桌面即可) 打开git bash here 使用命令 $ ssh-keygen -t rsa -C "youremail@example.com"
创建创建SSH Key
(11)git remote add origin git@github.com:username/Mytest.git :和GitHub上的远程仓库关联,username是GitHub的用户名,Mytest.git是在GitHub上新建的远程仓库。
添加后,远程库的名字就是origin,这是Git默认的叫法,也可以改成别的,但是origin这个名字一看就知道是远程库。
在关联远程库后使用 git add file 和git commit -m "注释"后就可以执行步骤(12)了。
参考:https://www.cnblogs.com/onephp/p/6116716.html
(12)git push -u origin master 我们第一次推送master
分支时,加上了-u
参数,Git不但会把本地的master
分支内容推送的远程新的master
分支,还会把本地的master
分支和远程的master
分支关联起来,在以后的推送或者拉取时就可以简化命令。
测试时一直push失败,
error: failed to push some refs to 'git@github.com:username/Mytest.git '
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
git pull --rebase origin master
git push -u origin master
(13)git clone git@github.com:username/jeecms.git 克隆GitHub上的远程库
(14) 查看分支:git branch ,当前分支会有一个*
创建分支:git branch <name>
切换分支:git checkout <name>
创建+切换分支:git checkout -b <name>
合并某分支到当前分支:git merge <name>
删除分支:git branch -d <name>,如果要丢弃一个没有被合并过的分支,可以通过git branch -D <name>
强行删除。
git log --graph:命令可以看到分支合并图。
$ git merge --no-ff -m "merge with no-ff" dev:合并dev分支,请注意--no-ff参数,表示禁用Fast forward,--no-ff参数就可以用普通模式合并,合并后的历史有分支,能看出来 曾经做过合并,而fast forward合并就看不出来曾经做过合并
(15)修复bug时,我们会通过创建新的bug分支进行修复,然后合并,最后删除;
当手头工作没有完成时,先把工作现场git stash
一下,然后去修复bug,修复后,再git stash pop
,回到工作现场。
(16)git 多人协作的工作模式通常是这样:
首先,可以试图用
git push origin branch-name
推送自己的修改;如果推送失败,则因为远程分支比你的本地更新,需要先用
git pull
试图合并;如果合并有冲突,则解决冲突,并在本地提交;
没有冲突或者解决掉冲突后,再用
git push origin branch-name
推送就能成功!
如果git pull
提示“no tracking information”,则说明本地分支和远程分支的链接关系没有创建,用命令git branch --set-upstream branch-name origin/branch-name
。
这就是多人协作的工作模式,一旦熟悉了,就非常简单。
(17)
git tag <name>用于新建一个标签,默认为HEAD,也可以指定一个commit id;
git tag -a <tagname> -m "blablabla..."可以指定标签信息;
git tag -s <tagname> -m "blablabla..."可以用PGP签名标签;
命令git tag可以查看所有标签。
命令git push origin <tagname>可以推送一个本地标签;
命令git push origin --tags可以推送全部未推送过的本地标签;
命令git tag -d <tagname>可以删除一个本地标签;
命令git push origin :refs/tags/<tagname>可以删除一个远程标签。
(18)
忽略某些文件时,需要编写.gitignore;
.gitignore文件本身要放到版本库里,并且可以对.gitignore做版本管理!
最新文章
- wget 断点续传 &; nginx文件服务器
- idea key
- profiler加入计划任务
- HDU3820 Golden Eggs(最小割)
- Oracle性能优化--DBMS_PROFILER
- BAT文件执行完成后如何删除自身的解决办法
- 105、android:windowSoftInputMode属性详解
- 远程DLL注入
- 【Todo】ipcs命令学习
- 【前端学习】【CSS选择器】
- SQL Server 修改排序规则
- dnsever 邮件记录
- C# Attribute(特性)之---契约---[ServiceContract] 、 [OperationContract]
- 使用Team Foundation Server 2012源代码管理基本
- IMacro 脚本简记
- shell脚本字符串截取
- 推荐几款主流的Css Reset
- npm安装less和less-loadernpm或者stylus和stylus-loader
- mongodb与spring mvc 整合
- jq获取页面url后边带的参数
热门文章
- 基于Web Service的客户端框架搭建一:C#使用Http Post方式传递Json数据字符串调用Web Service
- 关于xp操作系统下使用VC6++编写的上位机软件在win10中运行的问题
- php中 isset函数有什么功能
- Educational Codeforces Round 51 F. The Shortest Statement(lca+最短路)
- mybatis 时间区间比较
- SpringBoot初探
- ubuntu-server-12.04.2安装配置jdk
- STS启动失败:Failed to load the JNI shared library
- nginx调优操作之nginx隐藏其版本号
- C++的重载流输出运算符