why is the rigidbody's velocity zero in OnCollisionEnter2D?

My game object moves correctly but when it collides its velocity is zero.
I know relative velocity is right but I want the velocity not the relative velocity between two objects.
I wrote :

Rigidbody2D rigidbody;
void Start () {
        rigidbody = GetComponent<Rigidbody2D>();
}

void Update{
rigidbody.velocity=Vector2.one;
}
void OnCollisionEnter2D(Collision2D coll){
// here rigidbody.velocity is zero !!!
}

it is because you are checking the velocity of rigidbody after the collision, unity calls OnCollisionEnter2D after the collision and it is obvious that after collision the velocity is going to be ZERO