git学习入门总结
1、淘宝镜像安装git
https://npm.taobao.org/mirrors/git-for-windows/v2.27.0.windows.1/
安装后git bash here 命令行输入 git -v检查是否有git版本,有代表安装成功
2、配置用户名和密码
安装完成后,需要单机打开git命令行进行设置,在命令行输入以下代码:
$ git config --global user.name "你的github名称"
$ git config --global user.email "你的github密码"
我们可以查看一下用户名和密码:
$ git config user.name
$ git config user.email
git工作流程
3、创建本地仓库、两种方式
(1)创建全新的仓库,新建一个空目录,目录名不能带中文,打开git bash 输入git init由于默认隐藏、需要再文件夹设置查看隐藏文件
(2)克隆远程仓库
git clone [url] https://gitee.com/Tencent-BlueKing/bk-PaaS.git例子:克隆完整的网址
)、
4、忽略不必要提交的文件
1、在需要创建 .gitignore 文件的文件夹, 右键选择
Git Bash 进入命令行,进入项目所在目录。
2. 输入 touch .gitignore 在文件夹就生成了一个“.gitignore”文件。
然后在”.gitignore” 文件里输入你要忽略的文件夹及其文件就可以了
.gitignore文件配置模板
.DS_Store
node_modules/
/dist/
npm-debug.log*
yarn-debug.log*
yarn-error.log*
{{#unit}}
/test/unit/coverage/
{{/unit}}
{{#e2e}}
/test/e2e/reports/
selenium-debug.log
{{/e2e}}
# Editor directories and files
.idea
.vscode
*.suo
*.ntvs*
*.njsproj
*.sln
5.1、创建本地仓库,提交至远程仓库
1)在项目上打开git命令行,git init 初始化git,git add . 添加至暂存区,
2)git commit -m 第一次提交至本地仓库
3)在github上新建跟项目名称一样的仓库,复制地址(地址指githu远程仓库地址)
4)git push 地址 master;(master是主分支,一般操作项目需要单独建一个分支)将本地仓库推送远程仓库,输入密码后,就能在github远程仓库里看到本地仓库了
5)git remote add origin 地址,用别名代替以后每次提交至远程仓库地址的操作
以后提交远程仓库输入,git push origin master(origin代替地址)
可以改成git push -u origin master,记住仓库地址名称分支名字,以后直接git push提交
(改的时候需要重新登录一次github密码才能生效)
6)如果下次更改文件想提交,需要先git add 文件 再git commit -m 提交至本地仓库 git push origin master 提交至远程仓库
5.2切换分支
合并分支,需要切换到主分支上来操作合并
删除分支,如果某个分支不需要了,可以删除
注意:切换分支时必须确保文件都用commit提交到远程仓库,不然分支的文件会更新到主分支上;
如果在自己的分支上做的修改没有完成不想提交,但又下班结束了,可以用git stash暂时保存更改,此时切换分支不会更新到其他分支上,需要这个文件的时候git stash pop恢复改动就行
6、克隆远程仓库数据到本地(此处http协议复制的地址)
http和ssh区别:http需要登录github账户密码,但win10系统只用第一次登录,之后会记录到windows下,ssh设置好了免登录
1)克隆仓库git clone 克隆地址
2)cd 项目文件下
3)修改文件,git add 提交到暂存区,git commit 提交到克隆者的本地仓库
4)如果想提交到git远程仓库创建者下的项目,需要创建者github里点击settings,进入collaborators 加入小伙伴github的账户名称,复制copy invite link给需要加入的小伙伴,让他同意,就可以加入这个项目了,此后的操作跟创建者的操作指令一样,如创建者提交是git push,小伙伴也是git push
5)拉取远程仓库最新的版本:git pull 远程仓库地址 分支名称/git pull origin master
Clone是本地没有文件的时候使用,pull是更新最新版本的操作,如果创建者仓库发生改变,小伙伴就没法提交,必须更新到最新版本才能提交
解决冲突:如果小伙伴写代码提交的同时,版本也被更新了,此时上传远程仓库会报错,需要删除<<>>Cfsdasd ,保存文件,再push到远程仓库
7、配置ssh公钥及创建远程仓库
原理:公钥放在github,私钥放在本地电脑文件夹,匹配成功就可互传,不用密码
1)找到.ssh一般在c盘的用户-->admin文件夹下,
如果没有需要生成一个新的SSH密钥打开Git Bash,输入如下命令生成密钥,然后连续按三个回车即可:ssh-keygen
2)此时.ssh会生成一个公钥一个私钥,公钥放在github服务器中,私钥放在本地电脑中,打开pub后缀的文件,打开pub文件复制内容,到github头像里的settings,点击左侧ssh and gpg keys,复制内容到key里添加
3)点击头像进入我的项目,在克隆项目地址的地方吧https协议改成ssh,复制
4)测试git add . git commit -m get remote add origin_ssh (ssh地址)
5)git push origin_ssh master
8、跨团队协作(浏览别人代码时,优化后给原作者)
1)在别人github项目下,点击fork在自己的项目中创建一个一样的项目
2)可以克隆到本地做修改,然后进github ,pull request=?new pull request =>create pull request
学习git过程中的总结:
以下是个人理解,如有错误还请大佬指点
场景:当多个程序员开发一个项目的时候,需要一起管理项目,负责各自的模块,此时项目组长在当前项目下
1、打开git命令行,git init初始化本地仓库
本地仓库链接到远程仓库: git remote add origin 地址
把本地仓库git add . 提交至git暂存区,此时状态是staged,(git status 文件)文件变绿
2、将git提交至git本地仓库(git commit -m 备注),将项目提交至github远程仓库并创建主分支 (git push github项目地址 master),找地址的时候区分https或ssh方法
3、链接至远程仓库并用别名代替以后每次提交至远程仓库地址的操作(git remote add origin 地址)
以后提交远程仓库输入,git push origin master(origin代替地址)
可以改成git push -u origin master,-u是记住仓库地址名称分支名字,以后直接git push提交至远程仓库
4、组员通过http或ssh 克隆组长远程仓库里的项目到本地(git clone 项目地址)
5、master是主分支不能动,组员需创建新分支作为修改项目的地方(git branch 分支名称)
//*组员修改文件提交前,需要拉取仓库最新版本(git pull 远程仓库地址 分支名称/git pull origin master)
6、在命令行上切换到自己的分支 (git checkout 分支名称),将分支推送到远程仓库(git push -u origin 分支名称)
checkout还有一种用法:git checkout -- .撤销工作区所有修改,恢复成暂存区,也可以指定单文件
7、组长发现组员提交分支后,检查没问题可以合并到主分支上(git merge 来源分支的名称)