あじちゃんの備忘録。

〜ここはメモ帳です

追跡させたいブランチを指定する

git pull だけでmaster branchからpullしたい

🤔💬 何も指定しないと、git pull <remote> <branch> を指定する必要がある. めんどう.

1. GitHubのリモートブランチと対応するローカルブランチを確認する.

$ git branch -vv

これで、以下のような結果が出てくるはず.

  develop 4192c2b [origin/develop] commit
  master  e26b393 [origin/master: behind 1] first try
* test    4192c2b commit
  • * が現在のブランチ
  • [リモート/ブランチ名] が追跡(対応)しているブランチ

2. 追跡ブランチを指定する.

  • 追跡させたいローカルブランチにcheckoutした状態で以下を実行
$ git branch --set-upstream-to=origin/[ブランチ名]

 or

  • オプションを省略できる(-u)
$ git branch -u origin/[ブランチ名]

webの送信処理についての基礎

formタグについて

送信をするためにはformタグを用いる必要があります.(Ajax通信を用いる場合やHTML5の場合は不要)
<form>~</form> の間には(formタグを入れ子にする以外)どんなタグが埋め込まれていても問題ありません.

formタグには必須の属性が2つあります.

  • action属性
  • method属性

action属性

送信先のファイルのパスを指定します.
送信ボタンを押した際に,ここで指定したファイルにデータの送信とページ遷移を行います.

method

送信の方法を指定します.
POST/GETのいずれかを指定します. POSTは秘匿性があり個人情報の送信などに強く、GETは公開性がありアクセスログの開示を容易にしたりアドレスバーへの表示で渡した条件をユーザに見せることができます.

inputタグについて

inputタグは送信する値を定義するタグで,基本的に <form>~</form> の間に設置します.
※これがないと値はなにも送信されません

inputタグには必須の属性は3つです

  • type属性
  • name属性
  • value属性(入力フィールド以外は必須)

name属性

サーバー側が送信された値を受け取る時に必要なラベルになります. 詳細は下記の「送信後の例」をみてください.

type属性

入力される要素のタイプ(種類)を指定するもので、たくさんの種類があります.
入力する値に応じて適切な属性を指定する必要があります.
参考:<input>:HTML5タグリファレンス

value属性

name属性の値とセットでプログラム側に送られます.
input type="text" のようにユーザが入力できる場合には, value属性の値は空( value="" )または属性自体を省略してもOKですが,
その他のラジオボタン, チェックボックス, プルダウン等ではチェックされたinputのvalueを送信することからvalueが必須となります.

送信後の例

もし、以下のような input が定義されていた場合、

<form action="/" method="GET">
  <input type="text" name="ジュース" value="贅沢みかん" >
</form>

送信される値はvalue属性に指定されている「贅沢みかん」となります.
受け取り側では、

$_GET['ジュース']

のように、nameで指定した名称からvalueを得ることができます.
つまりname属性が無いと, どの入力データであるのかがプログラム側で判断できないためname属性が必須扱いなのです.

【jQuery】n秒間hoverすると発火する処理

$("#target").mouseenter(function(){
    //1秒間hoverしたら表示
    timmer = setTimeout(function(){
        console.log("SUCCESS!");
    },1000);
    }
}).mouseleave(function(){
    clearTimeout(timmer);
});

ポイント

  • setTimeoutを使う.
  • カーソルが外れた時にclearTimeoutでタイマーを切って処理への道を断つ.
  • setTimeout([処理], [n/1000秒])なので、1秒=1000で記載する.

✌️

もちろんhover()でもできる.

$("#target").hover(function(){
    //1秒間hoverしたら表示
    timmer = setTimeout(function(){
        console.log("SUCCESS!");
    },1000);},function(){
    clearTimeout(timmer);
})