Blogger Information
Blog 15
fans 0
comment 0
visits 20755
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
Git使用
李子的博客
Original
727 people have browsed it

(针对本地)

  1. Git的官方网站:http://git-scm.com



2.下载git for windows:https://git-for-windows.github.io/


3.设置用户名和邮箱

git config --global user.name "username"

git config --global user.email "xxx@qq.com"


4.创建版本库

mkdir learngit

cd learngit

pwd

git init


5.从工作区提交到暂存区,从暂存区提交当前版本分支区

(简单理解为三部分,工作区--暂存区--版本分支区[分支互不干扰])

git add <file>

git commit -m <备注>


6.查看版本库当前状态,文件修改内容

git status

git diff <file>


7.查看版本分支

git log [--pretty=oneline]


8.版本回退

(HEAD当前版本,HEAD^上个版本,HEAD^^上上个版本,HEAD~100往上第100个版本)

git reset --hard [HEAD|<commit id>]


9.查看命令历史

git reflog


10.撤销修改

场景1:当你改乱了工作区某个文件的内容,想直接丢弃工作区的修改时,用命令git checkout -- file。

场景2:当你不但改乱了工作区某个文件的内容,还添加到了暂存区时,想丢弃修改,分两步,第一步用命令git reset HEAD file,就回到了场景1,第二步按场景1操作。

场景3:已经提交了不合适的修改到版本库时,想要撤销本次提交,参考6.版本回退,不过前提是没有推送到远程库。


11.删除文件,commit的文件可恢复

git rm <file>


12.分支操作

查看分支:git branch

创建分支:git branch <name>

切换分支:git checkout <name>

创建+切换分支:git checkout -b <name>

合并某分支到当前分支:git merge [--no-ff] <name> 

(合并分支时,加上--no-ff参数就可以用普通模式合并,合并后的历史有分支,能看出来曾经做过合并,而fast forward合并就看不出来曾经做过合并)

删除分支:git branch -d <name>

分支合并图:git log --graph


13.Bug分支

创建分支进行bug修复,完成合并,删除该分支

保存工作区现场到stash内容:git stash

恢复的同时把stash内容也删了:git stash pop

恢复的同时stash内容并不删除:git stash apply

删除stash内容:git stash drop


14.标签管理

创建标签:git tag <name> [commit id|默认HEAD]

git tag -a v0.1 -m "version 0.1 released" 3628164

查看所有标签:git tag

可以推送一个本地标签:git push origin <tagname>

可以推送全部未推送过的本地标签:git push origin --tags

可以删除一个本地标签:git tag -d <tagname>

可以删除一个远程标签:git push origin :refs/tags/<tagname>


15.忽略特殊文件

.gitignore文件本身要放到版本库里,并且可以对.gitignore做版本管理

所有配置文件可以直接在线浏览:https://github.com/github/gitignore

(针对局域网)

16.连接GitHub

创建SSH Key:ssh-keygen -t rsa -C "youremail@example.com"(默认回车无需密码,在用户主目录生成.ssh文件夹)

登陆GitHub,打开“Account settings”,添加new SSH key(/.ssh/id_rsa.pub内容添加到key)

从远程库克隆,如:git clone https://github.com/miguelgrinberg/flasky.git


17.克隆局域网仓库(windows)

共享局域网仓库,直接访问网络路径(如://DESKTOP-EIR7POG/learngit或者//192.168.1.165/learngit,本机IP为192.168.1.165)

git clone //192.168.1.165/learngit

git默认拒绝了push操作,需要进行设置,修改.git/config添加如下代码:

[receive]

denyCurrentBranch = ignore


18.搭建局域网仓库(linux)

①下载git

sudo apt-get install git

②root创建git用户

sudo adduser git

③选一目录创建git空仓库(远程仓库)

sudo git init --bare sample.git

④把该仓库拥有者设置成git用户

sudo chown -R git:git sample.git

⑤设置git用户禁用shell登录

sudo nano /etc/passwd

git:x:1001:1001:,,,:/home/git:/bin/bash

git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell


19.本地对远程仓库常用操作

①克隆远程仓库

git clone git@server:/srv/sample.git

②上传本地master分支到远程b1分支(远程分支可有可无)

git push origin master:b1

③本地更新远程仓库数据(两种,多人合作推荐第二种)

第一种:远程master合并到本地master

git pull origin master 

第二种:远程所有分支(branch)下载到本地(git branch -a可显示所有分支),通过分析异同,再合并

git fetch origin

git diff [指定分支] 

git merge [指定分支]

--------------------- 

作者:HQ麟 

来源:CSDN 

原文:https://blog.csdn.net/u014686875/article/details/54952302 

版权声明:本文为博主原创文章,转载请附上博文链接!


Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post