"[图片] GIT 分布式版本控制系统, 跟踪并管理修改而非文件 1. 配置 git config --global user.name 'your name' git config --global user.email 'email.@example.com' 文件添加到本地仓库 git add(工作区添加到暂存区) .."

git

本贴最后更新于 240 天前,其中的信息可能已经东海扬尘

GIT

分布式版本控制系统, 跟踪并管理修改而非文件

1. 配置

git config --global user.name “your name” git config --global user.email "email.@example.com"

git add readme.txt

git commit -m “wrote a readme file”

git status

git diff readme.txt

git reset – hard HEAD^ 回退到上一个版本,HEAD 为当前版本,上一版本则是 HEAD^, 上上一版本则是 HEAD^^

git reset --hard 3628165 3628165 为你需要回退的版本号,可通过 git log 查看,版本号不需要写全,只需前几位即可,但一定要唯一

git checkout – [文件] 说明:git checkout readme.txt, 将 readme.txt 在工作区的修改全部撤销 情况一:还未 git add, 则回退到版本库一模一样 情况二:已经 git add, 则回退到暂存区的状态 针对二:git reset HEAD readme.txt 可以把暂存区的修改撤销掉(unstage),重新放回工作区

git reflog

git rm

  1. github 建立远程仓库

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

新建库

echo "# smart4j" >> README.md
git init
git add README.md
git commit -m "first commit"
git remote add origin https://github.com/admin-wl/smart4j.git
git push -u origin master

已有库和 github 的链接

git remote add origin https://github.com/admin-wl/smart4j.git
git push -u origin master

使用命令 git push -u origin master 第一次推送 master 分支的所有内容 使用命令 git push -u origin master 第一次推送 master 分支的所有内容

git clone 地址

  1. 分支

git checkout -b dev -b 参数表示创建并切换,相当于以下两条命令

git branch dev
git checkout dev

git branch [name]

git checkout [name]

git branch

git merge dev 说明: 为 fast forward 合并,看不出来曾经做过合并。

git merge --no–ff -m “test” dev 说明: 合并分支时,加上–no-ff 参数就可以用普通模式合并,合并后的历史有分支,能看出来曾经做过合并,而 fast forward 合并就看不出来曾经做过合并。

git branch -d dev

git log --graph

  1. 解决 bug 方法

git stash 当前工作现场“储藏”起来,等以后恢复现场后继续工作 恢复 stash 一是用 git stash apply 恢复,但是恢复后,stash 内容并不删除,你需要用 git stash drop 来删除; 另一种方式是用 git stash pop,恢复的同时把 stash 内容也删了

git branch -D

git remote

git checkout -b dev origin/dev

git pull

  1. 多人合作

  1. 标签

  1. 搭建 git 服务器

$ sudo apt-get install git

$ sudo adduser git

收集所有需要登录的用户的公钥,就是他们自己的 id_rsa.pub 文件,把所有公钥导入到 /home/git/.ssh/authorized_keys 文件里,一行一个。

先选定一个目录作为 Git 仓库,假定是 /srv/sample.git,在 /srv 目录下输入命令: $ sudo git init --bare sample.git

编辑 /etc/passwd 文件完成。找到类似下面的一行: git❌1001:1001:,:/home/git:/bin/bash 改为: git❌1001:1001:,:/home/git:/usr/bin/git-shell 这样,git 用户可以正常通过 ssh 使用 git,但无法登录 shell,因为我们为 git 用户指定的 git-shell 每次一登录就自动退出。

  • Git

    Git 是 Linux Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

    128 引用 • 244 回帖 • 890 关注
感谢    关注    收藏    赞同    反对    举报    分享
1 回帖    
请输入回帖内容...
  • wanmisy API      

    测试

    感谢    赞同    反对    举报    分享       回复