git使用教程(完整命令)

论坛 期权论坛 脚本     
匿名技术用户   2020-12-27 20:55   1024   0

一、git

1. git安装

sudo apt-get/yum install git //Unbuntu使用apt-get,CentOS使用yum

2. 创建用户

git config --global user.name "Your Name"

git config --global user.email "email@example.com"

3. 创建仓库

cd /home

mkdir learngit

cd learngit //首先创建并切换到一个空目录,如/home/learngit

git init //初始化

4. 增加文件并提交,如readme.txt

git add readme.txt

git commit -m "..." //引号内输入改动内容,

5. 修改文件

首先修改readme.txt的内容

git status //查看状态, 请多用!!!

git diff readme.txt //查看文件内容的变动, 更放心

git add readme.txt

git status //查看状态, 可以看到待提交的文件

git commit

git status //提交后,再次查看仓库状态

6. 版本回退

git log //或git log --pretty=oneline

git reset --hard HEAD^ //回退到上一个版本,上上个版本改为HEAD^^,向前1000个版本改为HEAD-1000

git reset --hard 版本号 //回退版本后,若要穿越回未来,命令窗口没有关闭的情况下,上上滚找到版本号,执行此命令

//版本号没必要写全,前几位就可以了,Git会自动找。

cat readme.txt //查看穿越后的文件

若仅回退某一个文件,请看8

7. 版本回退后穿梭回未来

回退到某个版本后就后悔了,想恢复到新版本,找不到新版本的commit id怎么办?

当你用$ git reset --hard HEAD^回退到某个版本时,再想恢复到回退前的版本,就必须找到回退前版本的commit id。Git提供了一个命令git reflog用来记录你的每一次命令:

$ git reflog

ea34578 HEAD@{0}: reset: moving to HEAD^

3628164 HEAD@{1}: commit: append xxx

ea34578 HEAD@{2}: commit: add xxx

cb926e7 HEAD@{3}: commit (initial): xxx

8.仅回退单个文件, 以readme.txt为例

git log readme.txt

git reset 版本号 readme.txt

git commit -m "..."

git checkout readme.txt //更新到工作目录

9. git add 的各种区别:

git add -A // 添加所有改动

git add * // 添加新建文件和修改,但是不包括删除

git add . // 添加新建文件和修改,但是不包括删除

git add -u // 添加修改和删除,但是不包括新建文件

10. 在 commit前撤销 add:

git reset <file> // 撤销提交单独文件

git reset // unstage all due changes

11. add前撤销对文件的修改:

git checkout -- readme.txt // 注意, add添加后(同commit提交后)就无法通过这种方式撤销修改

二. 远程仓库

1. 创建SSH KEY

ssh-keygen -t rsa -C "youremail@example.com"

ls -a 找到主目录下的.ssh目录

cd .ssh

vi id_rsa.pub

然后, 把id_rsa.pub中的内容复制到github中

2. 创建github仓库, 如learngit

3. git和github关联

使用命令 git remote add origin git@server-name:path/repo-name.git

或 git remote add origin https://github.com/path/repo-name.git;

关联的远程仓库为github时, server-name为github.com

4. 推送到远程仓库

git push -u origin master(首次推送);

git push origin master(非首次推送最新修改);

5. 从远称仓库克隆

git clone git@server-name:path/repo-name.git

或 git remote add origin https://server-name/path/repo-name.git

三、手动搭建远程服务器

1. 创建git远程服务器

git init --bare repo-name.git

2. 克隆远程仓库到本地

git clone ssh://user_name@host:port/home/path/repo-name.git

3. 创建新分支并切换到新分支

git checkout -b 新分支名

4. 分支内文件改动后,提交改动

git add <file>

git commit -m "..."

5. 将本地分支push到远程分支

git push origin 本地分支名:远程分支名

6. 从远程仓库更新本地仓库

git pull

7. 将远程git仓库里的指定分支拉取到本地(本地不存在的分支)

git checkout -b 本地分支名 origin/远程分支名

8. git状态查看

git status

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:7942463
帖子:1588486
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP