git --help : 查看git常见命令
git clone:得到一个项目的拷贝,
eg:git clone git://git.kernel.org/pub/scm/git/git.git 。如果访问一个Git URL需要用法名和密码,可以在Git URL 前加上用户名,并用@符号表示分割
touch file:新建一个内容为空的文件
ls -b:显示文件列表
ls -a:显示所有文件
git status (-s):查看上次提交之后是否有修改(加-s获得简短的输出)
git diff:查看未缓存的改动
git diff --cached:查看已经缓存的改动
git add . /file name:将想要的快照写入缓存
git commit:将缓存法人内容添加到仓库中,Git 为你的每一个提交都记录你的名字与电子邮箱地址,所以第一步需要配置用户名和邮箱地址
git commit -m '第一次版本提交'
git commit -am ‘修改的hello.php文件’: 如果你觉得 git add 提交缓存的流程太过繁琐,Git 也允许你用 -a 选项跳过这一步。
git reset HEAD file : 取消某文件的缓存(我们将某文件add到缓冲区后)
git rm:从git中移除某个文件,就必须从已经跟踪文件清单中移除,然后提交。git rm -f file:如果删除之前修改过并且已经放到暂存区域的话,则必须要用强制删除选项 -f
git rm --cached file : 如果把文件从暂存区域移除,但仍然希望保留在当前工作目录中,换句话说,仅是从跟踪清单中删除,使用 --cached 选项即可
git mv README README.md :用于移动或重命名一个文件目录。软连接
分支管理
git branch (branchname) : 创建分支
注:在当前分支(A)下创建新的分支(B),那么B和创建时刻的A是相同的(可以认为B复制了A)
git checkout(branchname):切换分支
当你切换分支的时候,Git 会用该分支的最后提交的快照替换你的工作目录的内容, 所以多个分支不需要多个目录。
git merge:合并分支(你可以多次合并到统一分支, 也可以选择在合并之后直接删除被并入的分支。 )
git branch:列出分支
eg: *master :此例的意思就是,我们有一个叫做 master 的分支,并且该分支是当前分支。
当你执行 git init 的时候,默认情况下 Git 就会为你创建 master 分支。
如果我们要手动创建一个分支。执行git branch (branchname)即可
echo .... >filename : 创建文件并将 .... 作为文件初始内容
git checkout -b (branchname) :创建分支,并切换到该分支下
git branch -d (branchname):删除分支
git merge : 合并分支(一旦某分支有了独立内容,你终究会希望将它合并回到你的主分支 )
cat file / cat file1 file2> traget_file : 打印文件/将多个文件合并到一个文件
查看提交历史
git log : 列出历史提交记录
git log --oneline:简洁版列出历史提交记录
git log --reverse --oneline : 逆向显示所有日志
git log --author= authorname --oneline :查找指定用户的提交日志
git log --oneline --before={3.weeks.ago} --after={2010-04-18} --no-merges : 指定日期
如果我要看 Git 项目中三周前且在四月十八日之后的所有提交,我可以执行这个(我还用了 --no-merges 选项以隐藏合并提交):
标签
git tag -a v1.0 85fc7e7 : 给85fc7e7追加标签
git tag -a v1.0 : 给最新一次提交打上标签
Git Github
提交到Github
git remote add origin [email protected]:csushl/runoob-git-test.git
git push -u origin master
git remote (-v) : 查看当前配置有哪些仓库(加-v,还可以看到每个别名的实际链接地址)
在线修改,然后本地更新修改
git fetch origin(仓库): 从远程仓库下载新分支与数据
该命令执行完后需要执行git merge 远程分支到你所在的分支。
git merge origin/master(分支) : 从远端仓库提取数据并尝试合并到当前分支
推送到远程仓库
eg:
$ touch runoob-test.txt # 添加文件
$ git add runoob-test.txt
$ git commit -m "添加到远程"
master 69e702d] 添加到远程
1 file changed, 0 insertions(+), 0 deletions(-)
create mode 100644 runoob-test.txt
$ git push origin master # 推送到 Github
git push origin master : 推送到 Github
其他
mkdir filename :当前目录下创建文件
pwd : 显示当前目录