- 投稿日:2020-03-31T20:34:09+09:00
Dockerコンテナ内でGitコマンドを実行しようとすると「Operation not permitted」というエラーが出るときの対応
- 投稿日:2020-03-31T17:43:05+09:00
リモートブランチをローカルに持ってくる
- 投稿日:2020-03-31T17:38:47+09:00
Git コマンド長すぎてめんどくさい問題を解決する方法
Git を扱う際に、
checkout
、branch
、commit
、status
などを使用しますが、これが長くて打つのだるいなぁと思ったことはないでしょうか。そんなめんどくささは「Git エイリアス」を使うと解決することが出来ます。Git エイリアスとは
- Git コマンドを別名で実行(入力)できるもの
- コマンドを短縮化できるので入力が非常に楽になるもの
というくらいの理解で OK でしょう。
設定方法
設定方法は超シンプルで、コマンドで実行する方法と
.git/config
ファイルへ書き込むする方法があります。コマンドで設定する方法
以下のコマンドを実行するのみです。
$ git config --global alias.co checkout $ git config --global alias.br branch $ git config --global alias.ci commit $ git config --global alias.st statusこのような設定をすることで、例えば次のコマンドは同じ意味になります。
(設定前) git checkout
(設定後) git coConfig ファイルを書く方法
./git/congig
ファイルを開き、以下の様に記載します。[alias] co = checkout br = branch ci = commit st = statusエイリアスを確認する方法
ファイルを直接開いて確認するのは面倒なので、以下 Config コマンドで確認することが出来ます。
git config --get-regexp alias例えば、上述4つの Config コマンドを実行したあとで、
git config get
を実行すると以下のような形になります。C:\Users\komiyasa>git config --get-regexp alias alias.co checkout alias.br branch alias.ci commit alias.st status簡単にショートカットのような Alias を設定することができました。
参考
Git の基本 - Git エイリアス
gitで登録したaliasコマンド一の覧や内容をイイ感じに確認できるようにしてみた
- 投稿日:2020-03-31T16:09:26+09:00
git clone プロジェクト名のディレクトリを作成したくない
- 投稿日:2020-03-31T12:22:40+09:00
bitbucketのpipelinesでgit describeでエラーにならないようにする
はじめに
普段 kotlin で開発しているのですが、ビルドに時間がかかって困っています。
なので、bitbucketのpipelinesで自動的にbuildして、s3に上げて、それを使おうとしたのですが、tagを付けてもgit describeがpipelines上ではエラーになってしまいます。
ローカル環境ではエラーにならないのに全然理由がわからずに困っていたのですが、やっと解決したので共有します。git describeでエラーになる理由
pipelinesのBuld setupに秘密がありました。
ログをみると以下のようになっているかと思います。
+ umask 000 + GIT_LFS_SKIP_SMUDGE=1 retry 6 git clone --branch="master" --depth 50 https://x-token-auth:$REPOSITORY_OAUTH_ACCESS_TOKEN@bitbucket.org/$BITBUCKET_REPO_FULL_NAME.git $BUILD_DIR Cloning into '/opt/atlassian/pipelines/agent/build'...--depth 50を指定していることにより、タグを付けたところまでcloneしてくれないのが原因でした。
どうすれば
--depth 50を指定しなければよいので、cloneのオプションを指定します。
bitbucket-pipelines.ymlimage: build用docker-image clone: depth: full pipelines: 以下略これで無事にtagを付けたcommitもcloneされます。
+ umask 000 + GIT_LFS_SKIP_SMUDGE=1 retry 6 git clone --branch="master" https://x-token-auth:$REPOSITORY_OAUTH_ACCESS_TOKEN@bitbucket.org/$BITBUCKET_REPO_FULL_NAME.git $BUILD_DIR Cloning into '/opt/atlassian/pipelines/agent/build'...参考